承接上一篇的继续,https://segmentfault.com/a/11...
继续说css的选择器。
这篇文章,主要说伪类
1、:after、:before,这两个可能是日常用的较多的。
类似的就是说,在父元素的后面或者前面添加一个元素。
必须要的一个参数content,即使什么内容都没有,都要设置一个空的字符串。
2、:link, :visted, :hover, :active
这四个分别是,未被访问的时候,已经被访问过了,当鼠标放在元素上的时候,正处于活动中的时候。
- 一般来说,设置标签都是按照这个顺序设置样式,假设定义的顺序是a:visited、a:hover、a:link,这时候就会发现,不管我有没有hover上去,样式都是link的样式的,这是因为鼠标经过的未访问链接同时拥有a:link、a:hover两种属性,在第一种情况下,a:link离它最近,所它优先满足a:link,而放弃a:hover的重复定义。
- 所以,如果一个链接没有被访问过,那么它有可能同时拥有 link , hover 两个属性,不能让 link 写在后面,否则不管 hover 是否,都会显示link的样式;同样的道理,如果一个链接已经被访问过了,那么它有可能同时拥有visited , hover 两个属性,hover 要在 visited 的后面;
- 如果把hover放在active后面,那么实际你在激活(active)链接的时候就触发了hover伪类,hover在后面覆盖了active的颜色,所以始终无法看到active的颜色 。
3、:focus,选择获取焦点的input元素
当获取到焦点的时候,会发生变化
4、:first-letter,元素内的首个字符。
5、:first-line, 元素内的首行字符。
6、:frist-child,:last-child。属于所选元素的第一个子元素或者最后一个元素。
7、:first-of-type,last-of-type
所选元素的第一个或者最后一个元素内部的所有元素
kkw,test,哈哈哈哈(第一个) 都产生效果
8、:only-of-type,only-child只包含一个相关的元素的
几乎用不到的属性的样子
9、:nth-child(2),所选元素的第二个内部所有元素
123,456都会有效果,括号里面的参数,可以设置为(2n)或者(2n+1)等方式,用于实现,隔行换色等效果的实现。
10、:nth-last-child(2),从最后面所选元素的第二个内部所有元素。
这里面括号内部的也可以设置为(2n)等参数。
11、:target,目标锚点被激活的时候。
12、:empty,遇到空元素的时候
13、:enabled, 启用的时候,主要用于input
14、:disable, 禁用的时候,同上
15、input:checked,当被选择的时候,或者用于chekbox,radio等元素。
好了,目前我的认知是这样一些了,对于,nth-of-type有点不熟悉,但是好像用到时间,也不是很多。简单的理解就是说,对于所选择元素的类型下的元素了。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。