2016-08-23 196 views
0

有没有一种方法来构建一个CSS文件中这样的方式?:CSS结构我的代码

a:link { 
    color: red; 
    font-weight: bold; 
    a:hover { 
    text-decoration: none; 
    font-weight: normal 
    } 
} 

所以我想一个正常的链接下划线和大胆的,但是当我在它悬停,它不应该加下划线和粗体,但它应该仍然具有相同的颜色。 (这是一个简单的例子,只是为了说明)

编辑:我/在寻找一种方式,没有青菜或更少

+2

是的,但你必须使用CSS少 –

+1

@Dinesh任何可以用Less编写的东西也可以用纯CSS编写;毕竟少编译为纯CSS。你不能像这样写*,但是不需要。即使在更少的情况下,这也意味着与实际需要的不同。 – deceze

+0

可能重复的[我可以使用CSS像JavaScript?](http://stackoverflow.com/questions/21302316/can-i-use-css-like-as-javascript) –

回答

2
a { 
    color: red; 
    font-weight: bold; 
} 

a:hover { 
    text-decoration: none; 
    font-weight: normal 
} 

所有a元素将是红色和大胆。具体来说a:hover元素也将没有文字修饰,并且字体权重被覆盖为normal。你不是想处理“父母和孩子”在哪里,只需要更具体的状态的一个元素。

+0

谢谢,我想我会用这个办法。对于标题而言,我不知道如何称呼它,所以我认为它可能与父母的儿童协会类似,孩子与父母具有相同的属性。但我现在编辑了标题。 – bendajo

0

有没有这样的事情在CSS中继承,但是你可以这样做:

a:link, a:hover { 
    color: red; 
    font-weight: bold; 
} 
a:hover { 
    text-decoration: none; 
    font-weight: normal; 
} 
0

这在评论中提到的部分,但我认为它值得自己的职位。

你会使用SASS(或者LESS,但我发现前者更容易)写出你的代码,然后编译器如Koala将其编译为常规CSS。

这样你的代码就变成了:

a:link { 
    color: red; 
    font-weight: bold; 

    &:hover { 
    text-decoration: none; 
    font-weight: normal 
    } 
} 

正如预期它会奏效。

+0

'&:hover'会编译成'a:link:hover',这不是我想要的... – deceze

+0

这是一种可能性,但我一直在寻找一种没有sass或更少的方式 – bendajo