从另一个样式继承的另一种风格

问题描述:

如果有这样从另一个样式继承的另一种风格

.Style1 
{ 
    background-color:white; 
} 

和样式2这样的风格。

.Style2 
{ 
    border: black solid 1px; 
} 

如何让Style2将Style1作为基础样式?

马尔科姆

<... class="style2 style1" ..> 

在这里的是要简单地将其用作(例如)

class="style1 style2" 

这意味着如果发生任何重叠的元件将使用STYLE1然后蓝紫魅力(覆盖STYLE1与蓝紫魅力例如,如果你在最后一个使用相同的属性将被使用)。

据我所知,没有办法做到这一点。

你当然可以让你想应用这些样式包括类名<div class="style1 style2">

而且缺乏这个功能是有许多人在OOCSS(面向对象的CSS)上升的理由,而不管元素。和框架,如Less

使用此方法:

<div class="Style1"> 
    <div class="Style2">bla bla bla</div> 
</div> 

有在CSS没有继承。你可以继承最接近的是在你的HTML元素指定2类:

<div class="Style1 Style2">..</div> 

或者你可以简单地使用相同的样式名称:

.Style1 { background-color:white; } 
.Style1 { border: black solid 1px; } 

现在STYLE1将有两个属性

+0

这是对的 - 您可以在元素的“class”属性中指定多个样式。 – Liao 2009-07-22 09:21:39

+0

是的,我完全同意这个答案.... +1 – 2009-07-22 09:26:03

你可以使用

<span class="style1 style2"> 

或定义

span { /* define base styles for all spans here */ } 

span.style1 { /*inherits styles from span, and adds specific styles to that */ } 

使用与

<p>Normal p text and <span>style</span>, <span class="style1">style 1 type text</span>.</p> 

.Style1, .Style2 { 
    background-color:white; 
} 

.Style2 { 
    border: black solid 1px; 
} 

这样STYLE1和蓝紫魅力都将有背景设置为白色,只有蓝紫魅力也将有黑边。