我得到了一个外部样式表(.css文件),它可能不会以任何方式改变。不过,我需要将此样式表应用于单个div,并因此将我的现有网页中的div的内容应用到该div。我正在将样式表的内容作为文本读入需要影响的div内的空白样式标记(使用.innerHTML),但这仍会影响整个网页,而不仅仅是单个div。有人可以帮忙吗?Div与外部样式表?
回答
iframe解决方案是这样的:
在你的主HTML文件,你有你DIV:
<div id="myspecialdiv">
<iframe width="100%" height="100%" frameborder="0" src="divcontent.html"></iframe>
</div>
风格,当你需要它。该divcontent.html文件应该是一个完整的HTML文件,包括DIV标签的内容,并使用您的外部样式表的链接:
<html>
<head>
<link rel="stylesheet" href="path/to/external/stylesheet.css" />
</head>
<body>
<!-- The contents of your DIV -->
</body>
</html>
说,我给了一些外部样式表。如何在运行时将它们链接到divcontent.html?我正在忙于开发一个不断获得新的.css文件的Web应用程序 – LethalPapercut 2013-05-03 11:17:53
这取决于您的运行时,您用来开发Web应用程序的语言,它所基于的框架以及应用程序的体系结构。但并不要求'divcontent.html'文件实际上是HTML文件 - 它可以是任何构造HTML的文件(例如:PHP,aspx等)。答案给你的概念 - 你必须适应你的具体要求。 – 2013-05-03 11:37:16
如果您可以使用HTML5,则可以尝试使用scoped styles。你可以包括DIV中的CSS,让它只影响它的父:
<div>
<style scoped>
// Styles here
</style>
</div>
看起来像一个惊人的解决方案,但它不符合我的需要,因为任何主流浏览器都不支持scoped属性。 – LethalPapercut 2013-05-03 10:52:17
我想链接到外部CSS文件,它似乎不能在
CSS影响到整个页面。我知道隔离的唯一方法,以便它只影响页面的特定部分是使用IFRAME。 – 2013-05-03 10:40:54
因此,我的div内的IFRAME?我可以做到这一点,但那么我怎么只影响IFRAME呢? – LethalPapercut 2013-05-03 10:42:28