2013-03-15 46 views
0

主要文件:如何从另一个CSS规则借用风格

home.html的(访问:只读)

... 

    <h1>Heading 1</h1> 

... 

externalFile.css(访问:只读)

.tagh1 { 
    margin: 10px 0; 
    font-family: inherit; 
    font-weight: bold; 
} 

myfile.css(访问:读/写)

h1 { 
    color: #08C; 
} 

如何在h1 CSS规则(myfile.css)中包含.tagh1(externalFile.css)的样式,而无需将它们从一个文件复制并粘贴到另一个文件?

符合逻辑的答案:

h1 { 
    color: #08C; 
    /* Just copy and paste them */ 
    margin: 10px 0; 
    font-family: inherit; 
    font-weight: bold; 
} 

,但我不能做到这一点:)

编辑:

我想这可能是这样的:

.tag1 { 
    property1: value1; 
    property2: value2; 
} 

.tag2 { 
    include(.tag1); /* or something */ 
    property3: value3; 
} 

到避免重复代码。

+1

这个问题是在这里回答:http://stackoverflow.com/questions/147500/is-it-possible-to-include-one-css-file-into-another – Lemurr 2013-03-15 01:35:09

+2

“我不能这样吗?”听起来有点不对劲。 – hjpotter92 2013-03-15 01:36:46

回答

3

如果我正确地理解了这个问题,那么您已经在页面中包含了两个CSS文件,并且您希望在没有必需的CSS类的H1标记上重新使用第一个CSS规则。而且它不是编辑HTML文件或第一个CSS文件的选项。

CSS本身并不能提供你正在寻找重复使用的类型。像LESSSASS这样的动态样式表语言可能会,但考虑到您的网站(只读文件)的限制,这可能不是一种选择。

如果JavaScript或jQuery是一个选项,您可以动态地将.tagh1类添加到h1元素,而无需触摸HTML源代码。

的jQuery

$(document).ready(function(){ 
    $('h1').addClass('tagh1'); 
}); 

然后两个上述CSS规则将被施加到H1元件。

您有写入权限的.js文件吗?如果是这样,请在上面添加上面的代码。如果不是,则必须将CSS样式复制并粘贴到第二个CSS文件中。