javascript - 移動端padding問題
問題描述
在學(xué)習(xí)vue.js的時候,遇到這樣奇怪的現(xiàn)象當(dāng)我設(shè)置width:375px padding: 0 22px 0 12px如下顯示
可以看到左邊留有空白,右邊沒有
控制臺顯示
完整css
.bulletin-wrapperwidth: 375pxheight: 28pxline-height: 28pxpadding: 0 22px 0 12pxwhite-space: nowrapoverflow: hiddentext-overflow: ellipsis
為什么當(dāng)設(shè)置width為375px(iPhone6)左邊的padding可以顯示,右邊卻沒有,不是已經(jīng)設(shè)置滿寬度了?,事實上padding改為margin也是如此
問題解答
回答1:第一個截圖是iPhone6的截圖,第二個截圖是把寬度增加以后的截圖,由圖二可知,兩邊的padding設(shè)置都是正確的,只不過是p元素的父元素的寬度小于12px+375px+22px,所以后面的padding和省略號的部分看不見而已。
p元素是塊元素,默認會填充父元素,所以如果不是有特殊需求,你這的width: 375px;是不是可以刪除。去掉width屬性后的截圖如下。
iPhone6的寬度就是375,你看你的box的圖,內(nèi)容寬度375,再加上padding,肯定超過了屏幕寬度,當(dāng)然只能看到左邊的padding設(shè)置box-sizing:border-box后,width設(shè)的寬度就會是內(nèi)容寬度+padding的寬度了
回答3:你這情況肯定還有橫向的滾動條,你試下左右拖動下就知道了,如果屏幕是375,你設(shè)置了寬是375,padding: 0 22px 0 12px,實際上寬度是409。你加上box-sizing:border-box;這個css屬性吧,加上之后,寬度就包括padding和border了,就正常了,比如寬度設(shè)置是375,padding: 0 22px 0 12px,實際上,寬度是341(375-22-12);PS:我有一個不理解,上面那個樣式是編譯計算出來的,還是你寫的?如果是你寫的,難道手機網(wǎng)站,你只適配375這個屏幕尺寸?
回答4:現(xiàn)在設(shè)置的設(shè)備的分辨率是?
相關(guān)文章:
1. vim里的高亮javascript的javascript.vim 已經(jīng)放到syntax里了,但是不行。2. angular.js - ng-file-upload 如何實現(xiàn)多圖片上傳3. android - xml的drawable作背景,是否會產(chǎn)生錯誤4. python - pip install出現(xiàn)下面圖中的報錯 什么原因?5. 我何時應(yīng)該在Java中使用JFrame.add(component)和JFrame.getContentPane()。add(component)6. angular.js - angularJs ngRoute怎么在路由傳遞空字符串及用ng-switch取得7. 輸入地址報以下截圖錯誤,怎么辦?8. node.js - node中MYSQL的異步問題9. javascript - 求助一個關(guān)于indexedDB的問題10. javascript - ie11以下單擊打開不了file,雙擊可以。求解?
