我刚创建了一个简单的页面,我试图用CSS模拟ajax。为此,我想创建带有可见标签的隐形单选按钮,一旦用户点击标签,就应该加载外部CSS文件。只有一个问题:标签在课堂上以纯文本形式打印出来。有没有办法解决这个问题?
编辑:根据要求,我的代码:
<!doctype html>
<html><head>
<title>Demo: Ajax without JS</title>
<style type="text/css">
#loader:checked:after{
content:'<link class="sheet" rel="stylesheet" type="text/css" href="external.css"/>';
}
</style>
</head><body>
<div class="rad"><input type="radio" id="loader"/><label for="loader">Loader</label></div>
</body></html>
是的,它尽可能简单。
答案 0 :(得分:1)
简单地说,你不能这样做。生成的内容被视为表示,因此实际上不会插入到DOM中。
请注意,生成的内容仅呈现 - 它不会出现在DOM树中。换句话说,生成的内容不会改变文档,只会改变文档。
http://reference.sitepoint.com/css/content
因此,您尝试插入的所有内容都将以纯文本呈现。另一个含义是,无论您使用content
生成什么,都无法使用Javascript进行操作。因此,你坚持使用Javascript来做这类事情。