CSS HTML

属性选择器

div[attr], /* 存在某属性 */
div[attr=value], /* 存在某属性,并且属性值为value */
div[attr^=value], /* 存在某属性,并且属性值以value开头 */
div[attr$=value], /* 存在某属性,并且属性值以value结尾 */
div[attr*=value] /* 存在某属性,并且属性值包含value */
{
    font-size: 18px;
}


结构伪类选择器

常用于选择某个标签下的子标签。

div span:first-child, /* 选择div下第一个子标签,需要是span类型 */
div span:last-child, /* 选择div最后一个子标签,需要是span类型 */
div span:nth-child(n), /* 选择div第n个子标签,需要是span类型 */
{
    font-size: 18px;
}

上面示例中,以第一个为例,将div下所有标签排序,匹配第一个子标签后进行判断,如果是span类型,则匹配,如果不是span类型,则不是则不匹配任何标签。


:nth-child(n) 其中n的取值范围:

① 数字,选择指定序号的标签。

② 直接写“n”,表示匹配所有。

    也支持简单运算比如"2n"匹配偶数,"2n-1"匹配奇数。

    (n+3)从第四个开始匹配。

    (-n+3)匹配前三个

③ 关键字,even偶数,odd奇数。


div span:first-of-type, /* 选择div第一个span子标签 */
div span:last-of-type, /* 选择div最后一个span子标签 */
div span:nth-of-type(n) /* 选择div第n个span子标签 */
{
    font-size: 18px;
}

上面示例中,以第一个为例,只将div下span标签排序,然后匹配第一个span标签。


其中:nth-of-type(n)中n的参数范围和:nth-child(n)相同。


:nth-child(n)和:nth-of-type(n)区别

span:nth-child(n): 将所有子标签排序,选中第n个,查看是否是span类型,是则匹配,不是则不匹配任何标签。

span:nth-of-type(n): 将指定类型标签(span)排序,选中第n个。


伪标签选择器

可以通过css创建标签。

::before /* 在标签内部的前端插入内容 */
::after /* 在标签内部的后端插入内容 */

语法:

element::before {
    content: ''; /* 必须设置此属性 */
}

特点:

1. 权重和html选择器相同为1。

2. 创建的伪标签是行内标签。

代码示例

.b::before {
    content: "hello ";
}
.b::after {
    content: "!";
}
<span class="b">tom</span>



转载请指明出处!http://www.miselehe.com/article/view/142