将多个<style>标记嵌入到单个html页面</style>中

时间:2015-03-26 22:40:53

标签: html css

我想以这样的理解为前提,我知道这对于网页设计来说是次优的,但我的双手并列。

我正在我公司的组织内工作,通过表单字段以html格式添加文档。

我编码的html基本上会插入页面的其他部分,而且我无法访问样式表或标题中的样式标记。

现在我将我的CSS嵌入到html中,但我希望有一些更清晰的代码,以便解决手头的问题。

有没有办法在样式标记下嵌入第二部分,我可以在正文中定义ID和类。我试图将样式标记放在正文中,但它与整个页面的标题冲突。

如果需要更多说明,请告诉我,并在事实之前感谢您的帮助!

3 个答案:

答案 0 :(得分:1)

  

有没有办法在样式标记下嵌入第二部分,我可以在正文中定义ID和类。我试图将样式标签放在正文中,但它与整个页面的标题相冲突。

多个样式标签都可以。如果您有多个样式标记the cascade rule applies,那么您只需要确保您的选择器具有比页面默认样式更高的特异性。

第二个问题是你放置样式标签的位置。严格来说,<style>标记应该放在<head>中,但实际上是all browsers will apply <style> anywhere in the page。在主体中具有样式,页面将不会验证,但它将正常工作。

答案 1 :(得分:0)

我这样做,在<style>...</style>中定义HTML块,并且它在我测试过的浏览器中运行正常(Firefox,IE10,Chrome) 。

答案 2 :(得分:0)

你的意思是&#34; 它与整个页面的标题冲突&#34;?是否存在PHP错误,表明它们是输出并且标头无法设置(因此系统似乎使用ob_start / ob_flush)

Normaly跟随应该工作:

<body>
    <style>
        .class {
           border: 1px solid #000;
        }
    </style>
</body>

也许标题中的一些CSS使用!important并使其无法覆盖,或者您只是缺少某些属性,因此看起来您根本没有更改任何内容。

您可以使用此技术将样式表动态加载到标题中:How to create a <style> tag with Javascript

var ss = document.createElement("link");
ss.type = "text/css";
ss.rel = "stylesheet";
ss.href = "style.css";
document.getElementsByTagName("head")[0].appendChild(ss);

或者你创建一个样式元素并用样式填充它,但这会更复杂,因为你必须用Javascript完成它并且在某些时候它很糟糕..也要让它清理一个额外的文件将是完美的溶液

我喜欢直播cssstylesheets(基于我所关注的目录模式,可以使用imgcssjs等短文或内容如scriptsimagesstylesheets)和default.css。这是你决定所谓的决定。