我目前正在尝试使用动态宽度 div 的缩放级别来修复一些奇怪的行为,我有点困惑。
当我尝试outerWidth()
使用 jquery 在 2 个 div 上设置相同的值时会出现问题,box-sizing: border-box
其中一个具有填充,而另一个没有填充,并且浏览器缩放设置为“非圆形”值(例如 67% 或 33% on chrome 和几乎每一个都在 safari 上)。大小是相同的,除了在这些级别上,具有填充的一个比另一个小。
这是我的问题的一个例子:http: //jsfiddle.net/ARMMB/3/
编辑:澄清问题。正如@jimjimmy1995 所说,有一种方法可以通过将其包装在另一个 div 中来绕过它,但这不是一个完美的解决方案,因为它不能在任何地方使用而不改变页面的整个设计。我更多的是寻找一种方法来计算准确的大小,具体取决于缩放级别和填充,如果它在这里工作,outerwidth 应该的方式。
的HTML:
<body>
<div id ="a">text a</div>
<div id ="b">text b</div>
</body>
的CSS:
#a{
background-color: red;
border-right: 1px solid black;
padding-left: 5px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
#b{
background-color: blue;
border-right: 1px solid black;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
js:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
newWidth= 150;
$("#a").outerWidth(newWidth);
$("#b").outerWidth(newWidth);
});
</script>