常用的CSS伪类选择器

常用的CSS伪类选择器:

        一些经常用到的伪类,很容易遗忘所以放到这里.

1. 链接伪类:


   :link:未访问的链接。
   :visited:已访问的链接。

2. 用户动作伪类:


   :hover:鼠标悬停在元素上时。
   :active:元素被激活(如点击)时。

3. 结构伪类:


   :first-child:元素的第一个子元素。
   :last-child:元素的最后一个子元素。
   :nth-child():元素的第n个子元素。
   :nth-last-child():从后往前数元素的第n个子元素。
   :first-of-type:同类型兄弟元素中的第一个。
   :last-of-type:同类型兄弟元素中的最后一个。
   :nth-of-type():同类型兄弟元素中的第n个。
   :nth-last-of-type():从后往前数同类型兄弟元素中的第n个。
   :only-child:没有其他兄弟元素的元素。
   :only-of-type:没有其他同类型兄弟元素的元素。
   :empty:没有子元素的元素。

4. 表单伪类:

   :enabled:表单控件可用。
   :disabled:表单控件不可用。
   :checked:被选中的表单控件(如单选按钮或复选框)。

/* 选择所有被选中的单选按钮,并设置它们的边框颜色为绿色 */
input[type="radio"]:checked {
  border-color: green;
}

​
/* 选择所有被选中的复选框,并设置它们的背景色为蓝色 */
.custom-checkbox:checked {
  background-color: blue;
  border-color: blue;
}
/*custom-checkbox是复选框的类名*/

​
5. 目标伪类:


   :target:当前活动的#锚点。

6. 否定伪类:


   :not():选择不匹配指定选择器的元素。

            /* 使用:not()选择器选择所有不是.highlight类的段落,并设置字体颜色为蓝色 */
            p:not(.highlight) {
                color: blue;
            }
7. 语言伪类:


   :lang():根据元素的语言选择元素。

8. 输入伪类:


   :valid:输入字段的值有效。
   :invalid:输入字段的值无效。
   :in-range:输入字段的值在指定范围内。
   :out-of-range`:输入字段的值不在指定范围内。
   :required:标记为必填的输入字段。
   :optional:没有标记为必填的输入字段。

9. 其他伪类:


   :root:文档的根元素。
   ::before 和 ::after:用于在元素内容前后插入内容。
   ::first-letter:元素的第一个字母。
   ::first-line:元素的第一行。
   ::selection:用户选择的文本。


 

### CSS伪类选择器的具体用法 CSS伪类选择器是一种用于匹配元素特定状态的选择器,它使得开发者可以基于用户的交互行为或者页面结构的变化来定义样式。以下是常见的几种伪类选择器及其具体用法和示例代码。 #### `:link` 和 `:visited` `:link` 用于未访问过的链接,而 `:visited` 则针对已访问过的链接。这两种伪类通常一起使用以区分不同状态下的超链接颜色或其他样式[^3]。 ```css a:link { color: blue; } a:visited { color: purple; } ``` #### `:hover`, `:active`, and `:focus` 这些伪类分别表示鼠标悬停、点击激活以及获得焦点的状态。它们常被用来增强用户体验,比如按钮高亮显示或输入框聚焦时的效果[^3]。 ```css button:hover { background-color: lightgray; } button:active { transform: scale(0.98); } input:focus { outline: 2px solid green; } ``` #### `:focus-within` 当某个容器内的子元素获取到焦点时,该容器会应用此伪类所指定的样式。这对于表单控件特别有用[^3]。 ```css div:focus-within { border: 2px dashed orange; } ``` #### `:target` 如果一个URL指向了一个ID,则带有相应ID的HTML元素将成为目标元素,并可由`:target`伪类选中并施加特殊样式。 ```css section:target { background-color: yellow; } ``` #### `:root` `:root` 表示文档的根元素,在 HTML 中总是指代 `<html>` 元素。它可以作为全局变量的作用域起点[^3]。 ```css :root { --main-bg-color: white; } body { background-color: var(--main-bg-color); } ``` #### `:checked` 适用于单选按钮 (`<input type="radio">`) 或复选框 (`<input type="checkbox">`) 被选中后的样式调整[^3]。 ```css label input[type=checkbox]:checked + span { text-decoration: line-through; } ``` 以上就是部分常用CSS伪类选择器的功能介绍及其实现方式的例子。利用好这些工具可以帮助构建更加动态且互动性强的网站界面。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值