Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在Safari中动态修改CSS规则_Javascript_Css_Safari - Fatal编程技术网

Javascript 在Safari中动态修改CSS规则

Javascript 在Safari中动态修改CSS规则,javascript,css,safari,Javascript,Css,Safari,根据以下示例,访问我的样式表对我有效: 这在我测试过的其他浏览器上运行得很好,但在Safari上不行。即使我链接的页面在Safari上也不起作用(它在iPhone上起作用,但在Mac上不起作用)——背景颜色仍然是红色 是否有适合Safari的替代方案 顺便说一句,Mozilla的文档有一些矛盾之处——本页说style属性是只读的: 但是他们在一个例子中修改了它,也有人在网上的例子中修改了它。所以我不确定问题出在Safari。无论哪种方式,我都需要一种工作方式来动态更改CSS规则 我真的不喜欢直接

根据以下示例,访问我的样式表对我有效:

这在我测试过的其他浏览器上运行得很好,但在Safari上不行。即使我链接的页面在Safari上也不起作用(它在iPhone上起作用,但在Mac上不起作用)——背景颜色仍然是红色

是否有适合Safari的替代方案

顺便说一句,Mozilla的文档有一些矛盾之处——本页说style属性是只读的:


但是他们在一个例子中修改了它,也有人在网上的例子中修改了它。所以我不确定问题出在Safari。无论哪种方式,我都需要一种工作方式来动态更改CSS规则

我真的不喜欢直接修改样式表。您可以创建各种类,并更成功地切换与html元素的关联。样式表并不意味着是动态的。我已经这样做了,但是我的应用程序有一个动态的选项卡数量,因为一些内容可能对用户不可用。如果缺少选项卡,我需要更改我在选项卡选择中添加的整个类,以便调整图片的大小。还有一些CSS类有:hover和:active,我也需要调整它们的大小。页面上的所有示例对我来说都很好。你确定你没有禁用JavaScript或其他东西吗?这非常令人惊讶。我确信Javascript没有被禁用,即使我在控制台中键入它,命令也会失败。我的Safari是最新版本,带有OS X 10.10 Yosemite。明天我会在别人的Mac上运行这个程序,看看会发生什么。你需要标记我,否则我就得不到你的回复。我使用的是运行Yosemite 10.10.3和Safari 8.0.6的Mac Pro
document.styleSheets[1].cssRules[0].style.backgroundColor="blue";