深入理解CSS中的UI伪类

(编辑:jimmy 日期: 2024/10/31 浏览:2)

伪类(Pseudo classes)是选择符的螺栓,用来指定一个或者与其相关的选择符的状态。它们的形式是 selector:pseudo class { property: value; },简单地用一个半角英文冒号(:)来隔开选择符和伪类。

伪类可以分为两种:

    UI( User Interface,用户界面)伪类会在 HTML 元素处于某个状态时(比如鼠标
    指针位于链接上),为该元素应用 CSS 样式。

    结构化伪类会在标记中存在某种结构上的关系时(如某个元素是一组元素中的第
    一个或最后一个),为相应元素应用 CSS 样式。

UI伪类
链接伪类

针对链接的伪类一共有4个,因为链接始终会处于如下4种状态之一。

    Link
    Visited
    Hover
    Active

    提示:由于这4个伪类的特指度相同,如果不按照这里列出的顺序使用它们,浏览器可能不会显示预期效果。方便记忆:LoVe? HA! 大写字母就是每个伪类的头一个字母。

    提示:一个冒号( : )表示伪类,两个冒号( :: )表示 CSS3 新增的伪元素。

focus伪类

表单中的文本字段在用户单击它时会获得焦点,然后用户才能在其中输入字符。
例如:input:focus {border:1px solid blue;}
上面一行代码会在光标位于 input 字段中时,为该字段添加一个蓝色边框。这样可以让用户明确地知道输入的字符会出现在哪里。
target伪类

如果用户点击一个指向页面中其他元素的链接,则那个元素就是目标( target),可以
用:target 伪类选中它。
例如:对于这个链接:<a href="#more_info">More Information</a>
位于页面的其它地方、ID 为 more_info 的那个元素就是目标。
假设该元素为这样:<h2 id="more_info">This is the information you are looking for.</h2>
那么,CSS规则:#more_info:target {background:#eee}
会在用户单击链接转向 ID 为 more_info 的元素时,为该元素添加灰色背景。

    维基百科在其引证中大量使用了:target 伪类。维基百科的引证链接就是正文里那些
    不起眼的数字链接。引证本身则位于长长的页面的最下方。如果没有:target 应用的
    突出显示,很难知道你点击的链接对应着一大堆引证中的哪一个。

结构化伪类

结构化伪类可以根据标记的结构应用样式,比如根据某元素的父元素或前面的同胞元素是什么。
first-child和:last-child

格式:

CSS Code复制内容到剪贴板
  1. e:first-child   
  2. e:last-child  

示例:

CSS Code复制内容到剪贴板
  1. ol.results li:first-child {color:blue;}   
  2. nth-child  

格式:

CSS Code复制内容到剪贴板
  1. e:nth-child(n)  

示例:

CSS Code复制内容到剪贴板
  1. li:nth-child(3)  

说明:e 表示元素名,n 表示一个数值(也可以使用 odd 或 even)

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。