如何通过周围标记排除标记

时间:2012-05-03 21:21:19

标签: html css

<body>
    <acctctrls>
        <a href="http://www.some-link.com/">Link inside acctctrls tag</a>
    </acctctrls>
    <a href="http://www.some-link.com/">Link outside acctctrls tag</a>
</body>

我想要&lt; a&gt; acctctrls标签内的标签跟随此css:

a
{
    color: #C20000;
    font-size: 12px;
    font-weight:600;
    text-align:center;
}

我想要&lt; a&gt; acctctrls标签之外的标签跟随这个css:

a
{
    text-decoration: none;
    font-style: normal;
    color: #D0D0D0;
}
a:hover
{
    text-decoration: none;
    font-style: bold;
    color: #EEEEEE;
}

6 个答案:

答案 0 :(得分:0)

试试这个:

acctctrls a {
    color: #C20000;
    font-size: 12px;
    font-weight:600;
    text-align:center; 
}

答案 1 :(得分:0)

你试过了吗?

acctctrls a{
    color: #C20000;
    font-size: 12px;
    font-weight:600;
    text-align:center;
}

答案 2 :(得分:0)

对于内部链接,只需将选择器更改为:acctctrls a, acctctrls a:hover并在外部代码后指定它。

答案 3 :(得分:0)

   a {
    // rules for outer tags
   } 

   acctctrls a {
     // rules for a's within acctctrls
    }

答案 4 :(得分:0)

将您的样式更改为:

a
{
    text-decoration: none;
    font-style: normal;
    color: #D0D0D0;
}
a:hover
{
    text-decoration: none;
    font-style: bold;
    color: #EEEEEE;
}

acctctrls a
{
    color: #C20000;
    font-size: 12px;
    font-weight:600;
    text-align:center;
}

来自CSS Selectors 当您提供多个标记名称时,默认情况下,CSS将在最后一个标记之前执行样式,因为它是标记之前的标记的后代。

我知道链接适用于CSS2,但同样适用于CSS3。

答案 5 :(得分:0)

保留第二个a和a:hover规则集,并提高第一个获取<acctctrls />内链接的特异性。

acctctrls a {
   color: #C20000;
   font-size: 12px;
   font-weight:600;
   text-align:center; 
}

然而,正如kei所说,使用带有类或id的标准元素可能会更好。否则,您需要使用JavaScript shiv(例如document.createElement('acctctrls'))来识别此元素的CSS。