如何选择标签之间的松散文本

时间:2013-05-17 19:24:55

标签: css css-selectors

如果您发现HTML代码中的文本未嵌入任何标记中,例如:

<sometag> ex1 </sometag>

我知道很多方法可以使用p标签或在div上使用类或id来选择文本,但我的问题是:你如何为这段代码编写css规则?另外,我希望规则特定于文本:

sometag {...}

是不可取的,因为它更通用。

提前感谢所有人。

3 个答案:

答案 0 :(得分:1)

简单地说,不。目前没有选择器只能用CSS选择TEXT。您可以(并且应该)使用标记来获得您正在寻找的结果:

HTML:

<sometag>
    <span>text here</span>
    <img src='..' />
    some other stuff i don't want to select in my CSS
</sometag>

CSS:

sometag span{
    /* do something here */
}

答案 1 :(得分:1)

文本节点不能应用样式,因此应用于样式的任何内容都必须位于元素中。如果您希望元素内部的某些文本的样式不同,请将其包装在span或div中,例如。

然后可以使用CSS根据元素类型,ID,类或文档顺序选择包装元素,但按内容。

但是,您可以使用jQuery使用:contains选择器按内容进行选择:http://api.jquery.com/contains-selector/

答案 2 :(得分:0)

如果“你的标签”是保留名称,比如输入,div等,你可以使用:

e.g

sometag {
  border-width: 1px;
}

当然,每个标签都可以接收id或类,因此,您仍然可以使用id或class:

ID

<sometag id="myid"></sometag>

#myid {
  border-width: 1px;
}

<sometag class="myclass"></sometag>
.myclass {
  border-width: 1px;
}