我创建了以下代码,以检测Chrome是否添加填充:如果所有其他浏览器添加边距,则为28%:28%。它没有按预期工作,我好奇我哪里出错了?
var chromeFix = document.getElementById('#slide-container');
if(navigator.userAgent.toLowerCase().indexOf('chrome') > -1) {
chromeFix.style.padding += 28%;
} else {
chromeFix.style.margin += 28%;
}

答案 0 :(得分:0)
作为这个凌乱的黑客的替代,我建议调查一下css重置。每个浏览器都有自己的用户代理'样式表,css重置旨在清除这些样式以实现跨浏览器的一致性
来自http://cssreset.com/what-is-a-css-reset/
什么是CSS重置?
CSS重置(或“重置CSS”)是一组简短的,经常压缩(缩小)的CSS规则,可将所有HTML元素的样式重置为一致的基线。
为什么要使用CSS重置?
你可能想知道这一切是什么 - 嗯,这很简单。从您通过重置设置的一致基础,您可以继续重新设置文档样式,安全地知道浏览器的HTML默认呈现方式的差异无法触及您!
Normalize.css是一种常用的css reset
https://necolas.github.io/normalize.css/
请确保这是您网页中的第一个css参考,因为它旨在覆盖,它会![/ p>
答案 1 :(得分:0)
这是我发现的jQuery解决方案......
if (navigator.userAgent.toLowerCase().indexOf('chrome') > -1) {
$('#slide-container').css('padding-top', '28%');
} else {
$('#slide-container').css('margin-top', '28%');
}
任何人都知道在纯JS中编写上述内容的正确语法/方法吗?