您的位置:首页技术文章
文章详情页

javascript - 移动端padding问题

浏览:72日期:2023-05-21 08:25:54

问题描述

在学习vue.js的时候,遇到这样奇怪的现象当我设置width:375px padding: 0 22px 0 12px如下显示

javascript - 移动端padding问题可以看到左边留有空白,右边没有

控制台显示

javascript - 移动端padding问题

完整css

.bulletin-wrapperwidth: 375pxheight: 28pxline-height: 28pxpadding: 0 22px 0 12pxwhite-space: nowrapoverflow: hiddentext-overflow: ellipsis

为什么当设置width为375px(iPhone6)左边的padding可以显示,右边却没有,不是已经设置满宽度了?,事实上padding改为margin也是如此

问题解答

回答1:

javascript - 移动端padding问题

javascript - 移动端padding问题

第一个截图是iPhone6的截图,第二个截图是把宽度增加以后的截图,由图二可知,两边的padding设置都是正确的,只不过是p元素的父元素的宽度小于12px+375px+22px,所以后面的padding和省略号的部分看不见而已。

p元素是块元素,默认会填充父元素,所以如果不是有特殊需求,你这的width: 375px;是不是可以删除。去掉width属性后的截图如下。

javascript - 移动端padding问题

回答2:

iPhone6的宽度就是375,你看你的box的图,内容宽度375,再加上padding,肯定超过了屏幕宽度,当然只能看到左边的padding设置box-sizing:border-box后,width设的宽度就会是内容宽度+padding的宽度了

回答3:

你这情况肯定还有横向的滚动条,你试下左右拖动下就知道了,如果屏幕是375,你设置了宽是375,padding: 0 22px 0 12px,实际上宽度是409。你加上box-sizing:border-box;这个css属性吧,加上之后,宽度就包括padding和border了,就正常了,比如宽度设置是375,padding: 0 22px 0 12px,实际上,宽度是341(375-22-12);PS:我有一个不理解,上面那个样式是编译计算出来的,还是你写的?如果是你写的,难道手机网站,你只适配375这个屏幕尺寸?

回答4:

现在设置的设备的分辨率是?

标签: JavaScript
相关文章: