BootStrap導(dǎo)航欄問題記錄
今天完成的事情:(實現(xiàn)了test9的響應(yīng)式導(dǎo)航欄的垂直平分和下拉列表的居中問題。)
我覺得最麻煩的就是要在bootstrap的格式下修改。我弄了好多次demo來虐導(dǎo)航欄。但是一直都沒有頭緒。知道昨晚在完玩狼人殺后,突然靈機一閃。
能不能通過內(nèi)部的固定高度,來實現(xiàn)垂直平分的效果呢。
在查看psd圖的效果是導(dǎo)航欄的a是垂直平分的。

那么我可否通過固定a超鏈接的高度來實現(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" >首頁</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;
}

為此怎么實現(xiàn)垂直居中呢?
第一點想到的是position定位了
既然要實現(xiàn)相對于a超鏈接的position,那么必須引入一個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;}
就可實現(xiàn)垂直居中了!
但另外一個問題又接著出現(xiàn)了,在galaxy5的小屏幕下,下拉菜單的li間距太大,不美觀。

又該怎么辦呢?
這個是在28號晚上想到方法的。靈感也是看了其他同學(xué)的日報。他們提到媒體查詢。
好,什么是媒體查詢。建議百度。這里不做介紹。
媒體查詢是吧,好那么久好辦了。
@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,完美。
但是還有問題啊!

圖標(biāo),和按鈕原本是不垂直居中的??!那這個怎么搞!
<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的盒子里嗎?
那不能通過flex兩端對齊來實現(xiàn)垂直嗎?
試試看
加了個
.df-jcsbc{display:flex;justify-content: space-between;align-items: center;}
但是效果不理想啊!總體來說,.navbar-brand 和navbra-toggle實現(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來使他們讓出位置來的。
然后通過定位稍微調(diào)了點左右距離。
最后就可以實現(xiàn)垂直居中了。
明天及今天計劃的事情:(是按照大娃師兄,提出的UI自檢 :首先對照字體大小,顏色,邊距,定位等問題,之后在不同的分辨率下查看是否有布局錯亂,不協(xié)調(diào)等問題。來做test10。)
總結(jié)
以上所述是小編給大家介紹的BootStrap導(dǎo)航欄問題記錄,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
用javascript修復(fù)瀏覽器中頭痛問題的方法整理篇[譯]
我們提倡無論何時都盡可能地使用CSS,這樣我們更容易取得成功.現(xiàn)在瀏覽器對CSS的支持已經(jīng)非常好,肯定足以讓你用來控制你的網(wǎng)頁布局與排版.但,即使如此,還是有某些頁面元素會在不同的瀏覽器下表現(xiàn)也不一樣.2008-11-11
跟我學(xué)習(xí)javascript的最新標(biāo)準(zhǔn)ES6
跟我學(xué)習(xí)javascript的最新標(biāo)準(zhǔn)ECMAScript 6,ES6(ECMAScript 6)是即將到來的新版本JavaScript語言的標(biāo)準(zhǔn),代號harmony,感興趣的小伙伴們可以參考一下2015-11-11
javascript實現(xiàn)dom動態(tài)創(chuàng)建省市縱向列表菜單的方法
這篇文章主要介紹了javascript實現(xiàn)dom動態(tài)創(chuàng)建省市縱向列表菜單的方法,可實現(xiàn)省市列表菜單效果,涉及javascript鼠標(biāo)事件及頁面處理json數(shù)據(jù)的技巧,需要的朋友可以參考下2015-05-05
javascript設(shè)計模式 – 抽象工廠模式原理與應(yīng)用實例分析
這篇文章主要介紹了javascript設(shè)計模式 – 抽象工廠模式,結(jié)合實例形式分析了javascript抽象工廠模式相關(guān)概念、原理、定義、應(yīng)用場景及操作注意事項,需要的朋友可以參考下2020-04-04
electron中preload.js文件的用法小結(jié)
preload.js文件在Electron應(yīng)用中起著橋梁的作用,使得在保持安全的同時,渲染進程可以訪問主進程的功能,保持渲染進程與主進程隔離的同時,又能使渲染進程具有訪問特定Electron API的能力的方法,本文給大家分享electron中preload.js文件的用法,感興趣的朋友一起看看吧2024-04-04
JS實現(xiàn)黑色風(fēng)格的網(wǎng)頁TAB選項卡效果代碼
這篇文章主要介紹了JS實現(xiàn)黑色風(fēng)格的網(wǎng)頁TAB選項卡效果代碼,通過簡單的頁面元素遍歷控制頁面tab切換效果,具有一定參考借鑒價值,需要的朋友可以參考下2015-10-10
Underscore.js 的模板功能介紹與應(yīng)用
Underscore是一個非常實用的JavaScript庫,提供許多編程時需要的功能的支持,他在不擴展任何JavaScript的原生對象的情況下提供很多實用的功能,需要了解的朋友可以詳細(xì)參考下2012-12-12

