gpt4 book ai didi

jquery - 我想我在 WebKit(或 jQuery)中发现了一个错误,其他人可以确认吗?

转载 作者:行者123 更新时间:2023-12-03 22:05:15 54 4
gpt4 key购买 nike

我相信我在 WebKit 中发现了一个错误。它涉及jQuery中的outerWidth(true)(我假设outerHeight(true))。

在除 Safari 和 Chrome 之外的所有浏览器中,第三个框都是 200。在 Safari 和 Chrome 中,它(几乎)是我的屏幕宽度。

点击here查看我的结果: inline image not found.
(来源:x3non.com)

您可以在这里自己测试:http://ramblingwood.com/sandbox/webkit-bug/test.html

我使用了这个测试文件:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<style type="text/css">
input {
width: 50%;
height: 1em;
font-size: 1em;
}
#testBox {margin-left:100px;width:100px;}
#testBox2 {padding-left:100px;width:100px;}
#testBox3 {border-left:100px black solid;width:100px;}
</style>
<script type="text/javascript">
function init(){
$('#w1').val($('#testBox').width());
$('#ow1').val($('#testBox').outerWidth());
$('#owt1').val($('#testBox').outerWidth(true));
$('#w2').val($('#testBox2').width());
$('#ow2').val($('#testBox2').outerWidth());
$('#owt2').val($('#testBox2').outerWidth(true));
$('#w3').val($('#testBox3').width());
$('#ow3').val($('#testBox3').outerWidth());
$('#owt3').val($('#testBox3').outerWidth(true));
}
$(document).ready(function(){
init();

$(window).resize(function(){
init();
});
});
</script>

</head>
<body>
<div id="testBox">test</div>
<p>width() <input type="text" id="w1" /></p>
<p>outerWidth() <input type="text" id="ow1" /></p>
<p>outerWidth(true) <input type="text" id="owt1" /></p>

<div id="testBox2">test2</div>
<p>width() <input type="text" id="w2" /></p>
<p>outerWidth() <input type="text" id="ow2" /></p>
<p>outerWidth(true) <input type="text" id="owt2" /></p>

<div id="testBox3">test3</div>
<p>width() <input type="text" id="w3" /></p>
<p>outerWidth() <input type="text" id="ow3" /></p>
<p>outerWidth(true) <input type="text" id="owt3" /></p>
</body>
</html>

最佳答案

Chrome 的 DOM 检查器确认这是一个 WebKit 问题;即使您尝试覆盖 margin-right,div 也会获得较大的右边距。强制正确计算边距的一些因素包括 float: leftdisplay: inline-block。此外,如果您将 div 放入另一个大小的 div 中,其 outerWidth(true) 将给出包含的 div 的 innerWidth,这可能是一个有用的实际解决方法 - - 只需将其包装在带有 margin: 0 的 div 中即可;填充:0;宽度:XXX.

关于jquery - 我想我在 WebKit(或 jQuery)中发现了一个错误,其他人可以确认吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1450129/

54 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com