为什么150 + 150在浏览器中不等于300?

Ror*_*ker 2 html css math textbox

我有以下HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <style>
    .box {
        border: solid black 1px;
        padding: 0px;
        margin: 0px;
    }
    </style>
</head>
<body>
    <form id="form1" runat="server">
        <input class="box" style="width:300px;" /><br /><!--CRLF for clarity only-->
        <input class="box" style="width:150px;" /><!--CRLF for clarity only-->
        <input class="box" style="width:150px;" /><!--CRLF for clarity only-->
    </form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

渲染时,第二行文本框似乎累积长于第一行的1.尽管通过style属性明确设置了宽度

为什么会发生这种情况,我可以避免它吗?

注意:这在FF3和IE7中看起来都是一样的

jhu*_*ter 23

文本框上有一个边框,不包含在宽度中.


mhe*_*384 7

jhunter是正确的,我想补充说你需要Firebug for FireFox(它是免费的).您可以通过已安装的快速自己想出来.检查您感兴趣的元素,然后查看"布局"选项卡.