html - 深入了解元素的宽度/高度来自何处

标签 html css firefox-developer-tools

<分区>

在 Firefox DOM 检查器中检查我的 HTML 时,我总是看到这个。

width not matching

元素的实际宽度(在本例中为 1170 像素)与假定选择的规则(750 像素)不匹配。我发现这可能是由 max-width 规则引起的,但在这种情况下没有 max-width。我假设某处有媒体查询或其他一些奇怪的规则对此负责。有什么方法可以使用 Firefox 或 Chrome 或任何开发控制台在一个地方获得影响元素宽度/高度的所有规则的摘要?

最佳答案

元素的宽度会受到多种因素的影响,要准确了解影响因素的最佳方式是首先查看检查器中的“盒模型”选项卡。你应该看到这样的东西:

Box Model Sample

在这里,您可以看到元素大小的每个组成部分的分割。中心框指示元素的基本大小。在几乎所有情况下,如果您在 CSS 中设置了 width 规则,您应该会在此处看到相同的数字;如果不这样做,您应该开始检查元素的子元素,看看是否有任何子元素比您为 width 属性指定的数字宽,因为扩展其父元素的子元素很常见问题/意外结果。

如果您确实在此处看到与指定相同的数字,则较大的宽度来自padding/margin/元素的边框,因此您应该开始检查您的样式规则以查看您为这些属性设置了什么,以及在哪里设置。

此外,请记住,根据您使用的 box-sizing 方法,元素的总宽度将根据这些属性以不同方式计算。例如,如果您设置了 box-sizing: border-box;,然后应用这些样式规则:

div {
    width: 500px;
    padding: 100px;
    border: 5px solid black;
}

你会看到像这样的盒子模型图:

enter image description here

请注意,基本宽度数字不再是 500,因为 paddingborder 规则现在影响宽度。因此,当您指定宽度时,它将是所有这些属性的总宽度,而您的基本宽度将只是 paddingborder 属性未使用的剩余部分.

希望对您有所帮助,如果您需要任何进一步的说明,请告诉我。

关于html - 深入了解元素的宽度/高度来自何处,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30601263/

相关文章:

html - 当@media screen and (max-width : 360px) it should be at center

html - 网页溢出滚动条

html - 不同页面不同颜色

javascript - 如何在 Chrome 或 Firefox 开发者工具控制台中使用 RxJS Observable?

firefox - 如何使用 Firefox Web Developer 工具栏设置 cookie 的路径?

html - 组织模式中日期标签的颜色发布到 HTML 和文本周围的框

javascript - 如何在jQuery中继续执行点击事件?

html - 如何使用 input type=number 在 slider 中设置计数值?

javascript - CSS 过渡 - 不起作用

javascript - 是否有 Firefox 可以替代 Google Chrome 中提供的 debug() 函数?