今天完成的事情:(實(shí)現(xiàn)了test9的響應(yīng)式導(dǎo)航欄的垂直平分和下拉列表的居中問(wèn)題。)
我覺(jué)得最麻煩的就是要在bootstrap的格式下修改。我弄了好多次demo來(lái)虐導(dǎo)航欄。但是一直都沒(méi)有頭緒。知道昨晚在完玩狼人殺后,突然靈機(jī)一閃。
能不能通過(guò)內(nèi)部的固定高度,來(lái)實(shí)現(xiàn)垂直平分的效果呢。
在查看psd圖的效果是導(dǎo)航欄的a是垂直平分的。
那么我可否通過(guò)固定a超鏈接的高度來(lái)實(shí)現(xiàn)垂直平分呢?
<div "h-nav"> <nav "container navbar navbar-default" role="navigation"> <div "row"> <div "navbar-header df-jcsbc"> <a "navbar-brand" href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" > <img src="img/test8-1/logo6.png" ""> </a> <button type="button" " navbar-toggle" data-toggle="collapse" data-target="#navbar-collapse"> <span "sr-only">切換導(dǎo)航</span> <span "icon-bar"></span> <span "icon-bar"></span> <span "icon-bar"></span> </button> </div> <div "collapse navbar-collapse" id="navbar-collapse"> <ul id="h-cell-1" "nav navbar-nav lsno navbar-right"> <li ""><a href="test9-1.html" rel="external nofollow" >首頁(yè)</a></li> <li ""><a href="test9-3.html" rel="external nofollow" ><span "dib">職業(yè)</span></a></li> <li ""><a href="test9-2.html" rel="external nofollow" rel="external nofollow" ><span "dib pat">推薦</span></a></li> <li ""><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><span "dib pat">關(guān)于</span></a></li> </ul> </div> </div> </nav> </div>
帶著這種想法,我設(shè)定了如下屬性。
#h-cell-1 a{ display:inline-block; height:97px; margin-left:32px; font-size:17.8px; text-decoration: none;color:white; }
為此怎么實(shí)現(xiàn)垂直居中呢?
第一點(diǎn)想到的是position定位了
既然要實(shí)現(xiàn)相對(duì)于a超鏈接的position,那么必須引入一個(gè)span盒子了。
<li ""><a href="test9-2.html" rel="external nofollow" rel="external nofollow" ><span "dib pat">推薦</span></a></li>
然后增加
#h-cell-1 li{height:97px;} #h-cell-1 a{ display:inline-block; position:relative; width:40px; height:97px; margin-left:32px; border-bottom:2px solid #20B176; font-size:17.8px; text-decoration: none;color:white; } #h-cell-1 a span{width:40px;}
就可實(shí)現(xiàn)垂直居中了!
但另外一個(gè)問(wèn)題又接著出現(xiàn)了,在galaxy5的小屏幕下,下拉菜單的li間距太大,不美觀。
又該怎么辦呢?
這個(gè)是在28號(hào)晚上想到方法的。靈感也是看了其他同學(xué)的日?qǐng)?bào)。他們提到媒體查詢。
好,什么是媒體查詢。建議百度。這里不做介紹。
媒體查詢是吧,好那么久好辦了。
@media only screen and (max-width: 700px) { #h-cell-1 li{height:auto;} #h-cell-1 a{height:20px;width:100%;margin:0;padding:0;overflow:hidden;} #h-cell-1 a span{height:auto;} }
ok,完美。
但是還有問(wèn)題啊!
圖標(biāo),和按鈕原本是不垂直居中的啊!那這個(gè)怎么搞!
<div "navbar-header df-jcsbc"> <a "navbar-brand" href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" > <img src="img/test8-1/logo6.png" ""> </a> <button type="button" " navbar-toggle" data-toggle="collapse" data-target="#navbar-collapse"> <span "sr-only">切換導(dǎo)航</span> <span "icon-bar"></span> <span "icon-bar"></span> <span "icon-bar"></span> </button> </div>
他們不是都在navbar-header的盒子里嗎?
那不能通過(guò)flex兩端對(duì)齊來(lái)實(shí)現(xiàn)垂直嗎?
試試看
加了個(gè)
.df-jcsbc{display:flex;justify-content: space-between;align-items: center;}
但是效果不理想啊!總體來(lái)說(shuō),.navbar-brand 和navbra-toggle實(shí)現(xiàn)了垂直居中。
那,怎么辦呢?
我是直接弄
.navbar-header{position: relative;height:97px;} .navbar-brand{ padding:0; } .navbar-header img{position:absolute; left:20px;} .navbar-header button{position:absolute; margin:0; right:20px;}
padding和margin來(lái)使他們讓出位置來(lái)的。
然后通過(guò)定位稍微調(diào)了點(diǎn)左右距離。
最后就可以實(shí)現(xiàn)垂直居中了。
明天及今天計(jì)劃的事情:(是按照大娃師兄,提出的UI自檢 :首先對(duì)照字體大小,顏色,邊距,定位等問(wèn)題,之后在不同的分辨率下查看是否有布局錯(cuò)亂,不協(xié)調(diào)等問(wèn)題。來(lái)做test10。)
總結(jié)
以上所述是小編給大家介紹的BootStrap導(dǎo)航欄問(wèn)題記錄,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com