Boostrap柵格系統(tǒng)與自己額外定義的媒體查詢的沖突問題
html結(jié)構(gòu)如下
<div class="row"> <div class="col-sm-6 col-xs-12"> <p class="text-left one"> 1111 </p> </div> <div class="col-sm-6 col-xs-12"> <p class="text-right two"> 2222 </p> </div> </div>
我想要實現(xiàn)的效果是在屏幕寬度大于768時,1111左對齊,2222右對齊,小于等于768時居中對齊。于是我又額外寫了媒體查詢
@media (max-width: 768px) { .container-fluid .row p{ color: #fff; font-size: 16px; text-align: center; line-height: 30px; } .row .text-left{ margin-top: 20px; } }
最終展示類似下圖
看起來一切正常,但是卻在臨界點768px時出現(xiàn)了問題,如圖
打開控制臺,會發(fā)現(xiàn)右邊的兩個圖標的樣式確實使用了text-align:center;,但是為什么展示出來呈現(xiàn)不一樣的效果呢
原因在于父級定義的柵格系統(tǒng),查看.text-right的父級div,會發(fā)現(xiàn)它所占的寬度為50%
因此在屏幕寬度為768px時,既有自己定義的樣式,也有原來柵格系統(tǒng)的樣式,所以導(dǎo)致混亂,根本原因在于沒注意柵格系統(tǒng)的實質(zhì)
/* 超小屏幕(手機,小于 768px) */ /* 沒有任何媒體查詢相關(guān)的代碼,因為這在 Bootstrap 中是默認的(還記得 Bootstrap 是移動設(shè)備優(yōu)先的嗎?) */ /* 小屏幕(平板,大于等于 768px) */ @media (min-width: @screen-sm-min) { ... } /* 中等屏幕(桌面顯示器,大于等于 992px) */ @media (min-width: @screen-md-min) { ... } /* 大屏幕(大桌面顯示器,大于等于 1200px) */ @media (min-width: @screen-lg-min) { ... }
柵格系統(tǒng)是用min-width定義的,為大于等于,而我們額外定義的媒體查詢用的是max-width,為小于等于,剛好有一個768px的重合,導(dǎo)致最終樣式混亂。
解決辦法:
去除交集,自己定義媒體查詢時,定義max-width:767px
以上所述是小編給大家介紹的Boostrap柵格系統(tǒng)與自己額外定義的媒體查詢的沖突問題,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復(fù)大家的!
相關(guān)文章
Jjcarousellite 實現(xiàn)圖片列表滾動的簡單實例
這篇文章主要介紹了Jjcarousellite 實現(xiàn)圖片列表滾動的簡單實例,有需要的朋友可以參考一下2013-11-11JS中FileReader類實現(xiàn)文件上傳及時預(yù)覽功能
這篇文章主要為大家詳細介紹了JS中FileReader類實現(xiàn)文件上傳及時預(yù)覽功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-03-03