Google Chrome 浏览器中用于 CSS 样式修改的 Javascript

标签 javascript css google-chrome

我在开发尽可能与大多数流行浏览器兼容的 Web 应用程序时遇到了一个奇怪的问题:

我有一个 HTML,我想通过单击按钮将其从页面内的原始位置移动到另一个位置。

这是 HTML 代码:

<div id="content"> text content ... </div>

关联的 CSS :

div#content{ padding: 15px 15px 15px 215px; }

以及点击按钮时移动 block 的 javascipt :

document.getElementById('content').style.padding="15px 15px 15px 15px";

=> 它在 Firefox、IE 和 Opera 中运行良好(基本上,它将原本占页面一半的内容 block 扩展到整个页面)

=> 而在 Chrome 中,javascript 代码不会扩展 block 宽度,而是将其移动 200px 固定宽度(但如果我一次硬编码填充修改,它工作正常......)

我希望足够清楚 :s 如果有人有解决方案.. 提前致谢。

最佳答案

如果你将 padding 换成 margin,它在 Firefox 和 Chrome 中的效果是一样的(无论如何在我的电脑上):

div#content{
    padding: 0;
    margin: 15px 15px 15px 15px;
    background: #fff;
}

然后:

function hideSideBar(){
    document.getElementById('content' ).style.margin="15px 15px 15px 15px";
    document.getElementById('out' ).style.display="none";
    document.getElementById('in' ).style.display="block";
}

function showSideBar(){
    document.getElementById('content').style.margin="15px 15px 15px 215px";
    document.getElementById('out' ).style.display="block";
    document.getElementById('in' ).style.display="none";
}

您可能需要修改其他一些样式以使其看起来相同。

我认为 Chrome 正在做的事情是合理的(并不是说我已经审查了规范来检查),增加填充自然应该使 block 变宽。

关于Google Chrome 浏览器中用于 CSS 样式修改的 Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1583065/

相关文章:

Javascript 循环一个数组

javascript - 如果我使用 JavaScript 更改 BG 颜色,如何使用 CSS .hover?

c# - Selenium ChromeDriver - 在后台运行但不是 headless 的

javascript - Web Audio API 从暂停状态恢复

javascript - 在 Vue 项目中包含或初始化 jQuery 库的最佳方法是什么?

javascript - dygraphs JavaScript 日期之间的距离

javascript - 使用哪个 Controller 进行健康指数监控

css - Bootstrap 布局在宽屏显示器上表现得很奇怪

javascript - 当我按下键盘上的特定字母时,我想更改 div 大小

windows和mac之间firefox和chrome的javascript兼容性