【发布时间】:2013-12-29 02:08:16
【问题描述】:
我加载任何网页。然后打开 firebug 控制台并运行下面的 javascript,它会在页面头部创建一个链接元素。代码如下。
var s = document.createElement('link');
s.setAttribute('href', 'file:///home/simha/.public_html/new1.css');
s.setAttribute('rel', 'stylesheet');
s.setAttribute('type', 'text/css');
document.getElementsByTagName('head')[0].appendChild(s);
alert('Stylesheet injected!');
文件内容:///home/simha/.public_html/new1.css
body { background-color: #0000ee !important; }
我在firebug控制台中运行代码,html的头部出现以下内容
<link type="text/css" rel="stylesheet" href="file:///home/simha/.public_html/new1.css">
但是body的背景颜色没有变化(变成蓝色)。
我独立于在 firebug 中编辑 css 来检查 css 规则,背景颜色变为蓝色。
我安装了 apache 网络服务器。所以我也尝试将“file:///home/simha/.public_html/new1.css”改为“localhost/~simha/new1.css”,但它仍然不起作用。
我使用的是火狐浏览器。
【问题讨论】:
-
身体有实际尺寸吗,您是否尝试使用
html代替。您是否打开控制台检查文件是否实际加载,并且没有返回 404 或其他错误。 -
并下载server
-
当我将 css 代码直接添加到 html 背景时变为蓝色。正如我提到的,我正在任何网站上尝试这个。我试过stackoverflow。 css规则没有问题。我用萤火虫检查过。
-
@SanthoshYedidi 看看我的回答。
-
"file:///" 是问题所在,因为它在客户端环境中没有意义
标签: javascript html css firefox