问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何使用css选择器中的类

发布网友 发布时间:2022-04-28 13:42

我来回答

2个回答

懂视网 时间:2022-04-28 18:03

本篇文章给大家介绍一下在css中:indeterminate选择器有什么用,可以在哪些元素中使用。下面我们就来看具体的内容。

:indeterminate选择器简单介绍

:indeterminate是一个CSS 伪类选择器,是用于选择处于不确定状态的用户界面元素的。

例如,radio和checkbox元素可以在选中状态和未选中状态之间切换,但有时处于不确定状态,既不选中也不取消选中。类似地,还有HTML5 <progress>标签,当完成的百分比未知时,进度条(<progress>)可以处于不确定状态。

因此,可以具体地说,:indeterminate伪类选择器可以在以下元素中使用:

1、复选按钮(<input type="checkbox">),其indeterminate属性设置为true。

2、单选按钮(<input type="radio">),在表单中拥有相同name值的单选按钮组中未被选中时单选按钮。

3、没有value属性的进度条元素(<progress>标签)。progress标签元素是一个HTML5元素,用于表示任务的完成进度。

可以说元素的不确定状态是一种视觉状态,下面是复选框的三种状态:已选中,未选中和不确定:

2.jpg

注:元素的不确定状态只能通过JavaScript来动态设置。上面提到的indeterminate属性只能和JavaScript一起应用,这意味着不能像下面这样通过HTML将元素的状态设置为不确定:

<input type="checkbox" indeterminate> <!-- 如果我们通过HTML添加它,则不起作用 -->

要将元素设置为不确定状态,您只能通过JavaScript执行此操作。例如,如果页面中有一组复选框,则以下行将选择第一行并将其状态更改为不确定状态:

document.getElementsByTagName("input")[0].indeterminate = true;

示例:嵌套的复选框

将复选框的状态(和样式)设置为不确定可能有用的一个用例是,当我们嵌套复选框时,让一个复选框具有了子复选框。通常是在提供多种选择的用户界面中看到这种情况,并且某些选项具有“子选项”。

通常,设置“父”复选框,以便它可用于切换其所有子复选框的样式 - 检查它将检查所有子项,取消选中它将取消选中所有子项。取消选中它将允许用户检查子复选框中的一些选项,同时保留其他选项未选中。

因此,使用此概念,可以检查复选框是否选中了所有后代复选框,如果未选中所有后代复选框,则该“父”复选框的状态为不确定,例如:

一组嵌套的复选框中,当我们选中一个子选项时,“父”复选框的状态为“不确定”

3.jpg

当我们选择2个子选项时,“父”复选框的状态还是为“不确定”

4.jpg

只有,当所有子选项都被选中是,父”复选框的状态才会为“选中”

5.jpg

嵌套的复选框的代码:

如果复选框的标签处于不确定状态,则父复选框标签的颜色将变为deepPink。

HTML代码:

<div class="container">
 <ul>
 <li>
 <input type="checkbox" id="option"><label for="option"> 选择喜欢的水果</label>
 <ul>
 <li><label><input type="checkbox" class="subOption"> 苹果、香蕉、橘子</label></li>
 <li><label><input type="checkbox" class="subOption"> 柚子、橙子、西瓜</label></li>
 <li><label><input type="checkbox" class="subOption"> 芒果、火龙果、哈密瓜</label></li>
 </ul>
 </li>
 </ul>
</div>

css代码:

ul {
 list-style: none;
}

.container {
 margin: 40px auto;
 max-width: 700px;
}

li {
 margin-top: 1em;
}

label {
 font-weight: bold;
}

input[type="checkbox"]:indeterminate + label {
 color: deepPink;
}

js代码:

var checkboxes = document.querySelectorAll('input.subOption'),
 checkall = document.getElementById('option');

for(var i=0; i<checkboxes.length; i++) {
 checkboxes[i].onclick = function() {
 var checkedCount = document.querySelectorAll('input.subOption:checked').length;

 checkall.checked = checkedCount > 0;
 checkall.indeterminate = checkedCount > 0 && checkedCount < checkboxes.length;
 }
}

checkall.onclick = function() {
 for(var i=0; i<checkboxes.length; i++) {
 checkboxes[i].checked = this.checked;
 }
}

动态效果图:

1.gif

总结:

热心网友 时间:2022-04-28 15:11

类选择器:类选择器允许以一种独立于文档元素的方式来指定样式。

该选择器可以单独使用,也可以与其他元素结合使用。

使用以下语法向这些归类的元素应用样式,即类名前有一个点号(.),然后结合通配选择器:

.important {color:red;}

上面的css可以将页面中所有class含有important的元素的文字设为红色

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
vivo闪电手柄没法一键连招 vivo闪电游戏手柄如何设置最佳_vivo闪电游戏手柄设置教程 switch跳舞的游戏叫什么 量子特攻怎么使用灌木 量子特攻量子魔方有什么用 量子技能介绍 量子特攻怎么换技能介绍_量子特攻怎么换技能是什么 量子特攻战斗中更换时装和机仆技能方法介绍 量子特攻如何设置快捷机仆技能_量子特攻设置快捷机仆技能方法介绍_百度... 换新显卡,显示器不亮!DVI-D无信号 怎么回事大佬棒棒忙? 求大佬带飞,电脑相关问题 QQ浏览器如何禁止加载项 如何禁止qq浏览器启动时打开网页 我打开QQ浏览器的时总是有个网页自动打开怎么设置才能不让它打开呢? qq浏览器自带弹窗如何关闭 厕所堵了,水下不去,用醋泡着行吗?有作用没 卫生间下水道堵塞了怎么办呢?农村又没人会弄 想自学英语,不知道从哪方面开始 想学英语,不知道如何开始? 英语一窍不通怎么学?从什么开始? 零基础学英语从哪开始? 学习英语最重要先学什么开始? 谁知道那个DNS服务器,是怎么确定的啊,还有啊局域网的IP地址是怎么分配的啊, 路由器设置静态IP,首选dns地址设置为202.98.0.68,那么背用的dns服务器地址改怎么填 怎么能找出 能上网首选DNS服务器 “教师专业化发展档案”指的是什么? 爱的教育 读书笔记 急求急求急求 .!!! 《一个教师究竟能走多远》读书笔记 如何提高自己的教育水平读书笔记 如何成为一名优秀的教师读书笔记 福建泉州一共有几个乡镇,分别是哪些~! 不是钉钉好友可以密聊嘛? 企业钉钉不是好友能一一聊天吗? 解除钉钉好友了对方还能给我发送消息吗? 在钉钉群和同学聊天没有加好友教师能看见吗? 无痛血尿有几种原因 无痛血尿的原因 肉眼可见全程无痛血尿是什么病 无痛性血尿都有哪些主要的原因 一个17岁的女孩,出现无痛性肉眼血尿,大概两年,是什么原因 男性出现无痛血尿的原因是什么 尿出血是怎么回事 无痛血尿是什么原因引起的 男性无痛性尿血是怎么回事 无痛微量血尿代表什么 肺癌病人出现血尿是什么原因 加入滴滴打车需要什么条件车龄几年需要什么条件 tcl智能电视升级后不能看电影了,怎么恢复原状? tcl电视恢复出厂设置后怎么调回来 tcl液晶电视机升级后桌面改变了怎么恢复原来的桌面 王者荣耀金牌打野称号获得方法 金牌打野怎么得