我的印象是,Safari、Chrome 和 Firefox 等浏览器中的用户代理样式表是浏览器内部的内容,无法直接修改(而是需要覆盖样式属性)。
由于包括 Mozilla 在内的各种网站,我也有这样的印象:盒子尺寸Webkit 和 Mozilla 的属性是“content-box”。
我在各种浏览器中查看的相当简单的虚拟页面上对此进行了测试。
我的问题是,在我们的生产应用程序的两个页面上,默认属性是不同的,我们无法弄清楚这是为什么。
在一页中,我们在 Web 检查器或控制台中看到“border-box”的框大小属性。它被分配给 CSS 选择器输入:not([type="image"]), 文本区域.
在另一页上,Web 检查器或控制台中没有提及 box-sizing 属性。
有谁知道是否有某种方法可以直接影响特定页面的用户代理样式表中的框大小定义?也许有一个图书馆可以做到这一点?我们在应用程序中使用prototype.js和swfobject.js...
UPDATE:如果我不清楚我的网络应用程序中的几乎每个页面,以及我在 box-sizing 属性上测试的每个“虚拟”页面都有默认的“content-box”值。由于某种原因,我的 Web 应用程序中的一个特定页面在 Web 检查器中显示,用户代理样式表(浏览器默认使用的样式表)已将该属性设置为“border-box”。我一生都无法弄清楚这是为什么。我正在寻找任何可能导致 Firefox 更改该属性的默认值的内容。
刚刚遇到了同样的问题。在我的例子中发生的事情是有人在上面放置了一段 Javascript 代码<!doctype html>
。结果,当我通过firebug检查DOM时,发现该文档没有doctype。
当我删除 JS 代码片段以使 doctype 声明位于文件的最顶部时,doctype 重新出现并修复了我看到的框大小问题(与您遇到的问题相同)。
看:
希望这可以帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)