html之input复选框变为圆形、自定义复选框、消除默认样式、去除默认样式、事件代理、事件委托

文章目录

  • html
  • css
  • JavaScript
  • 注意
  • outline


html

<div class="checkbox_bx" onclick="checkboxF()"><input class="checkbox" type="checkbox" value="1" name="boole" onclick="checkboxF()" /><span>是否启用服务</span>
</div>

css

.checkbox_bx {display: flex;align-items: center;
}.checkbox_bx>span {margin-left: 8px;
}/* * 总体样式* 去除默认样式* .checkbox[type="checkbox"]* 多种定义方式*/
.checkbox {width: 20px;height: 20px;border: 1px solid #aaaaaa;position: relative;border-radius: 50%;outline: none;/* 去除默认样式 */-webkit-appearance: none;background: transparent;cursor: pointer;
}/* * 未选中样式* 如果没有特殊样式可以省略* .checkbox[type="checkbox"]::before*/
.checkbox::before {content: "";width: 100%;height: 100%;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);background: transparent;border-radius: 50%;
}/* * 选中样式* 不能使用padding属性* .checkbox[type="checkbox"]:checked::before*/
.checkbox:checked::before {content: "";width: 70%;height: 70%;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);background-color: #409eff;border-radius: 50%;
}

JavaScript

// 事件代理(委托)
function checkboxF() {let checkbox = document.querySelector('.checkbox');checkbox.checked = !checkbox.checked;
}

注意

input标签对事件委托不起作用,需要单独在input上绑定事件。


outline

w3school

outline(轮廓)是绘制于元素周围的一条线,位于边框边缘的外围,可起到突出元素的作用。
注释:轮廓线不会占据空间,也不一定是矩形。
outline简写属性在一个声明中设置所有的轮廓属性。

MDN

CSS的outline属性是在一条声明中设置多个轮廓属性的简写属性 ,例如outline-style, outline-width和outline-color。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/8899.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

工信部、国家标准委联合印发《国家车联网产业指南(2023 版)》

国家工信部和标委发布了最新的《国家车联网产业标准体系建设指南&#xff08;智能网联汽车&#xff09;&#xff08;2023 版&#xff09;》&#xff0c;了解这篇文章&#xff0c;不论您是智能网联汽车的追随者&#xff0c;还是对智能网联汽车产业前景感兴趣的人&#xff0c;都非…

性能测试请求重试实现思路

文章目录 一、背景二、尝试的解决方案三、解决方案1&#xff1a;jmeter retrier插件&#xff01;有点用但是不是特别有用-_-||四&#xff0c;最终解决方案&#xff1a;lucust! 一、背景 最近系统需要压测一些活动&#xff0c;场景是新建抽奖活动之后&#xff0c;每隔2s查询1次…

Spring6——入门

文章目录 入门环境要求构建模块程序开发引入依赖创建java类创建配置文件创建测试类运行测试程序 程序分析启用Log4j2日志框架Log4j2日志概述引入Log4j2依赖加入日志配置文件测试使用日志 入门 环境要求 JDK&#xff1a;Java17&#xff08;Spring6要求JDK最低版本是Java17&…

Linux - find指令详细解释

来自chatgpt find 是一个强大的 Linux 命令行工具&#xff0c;用于在指定路径下查找文件和目录。它支持基于多种条件进行搜索&#xff0c;例如文件名、大小、类型、时间以及其他属性。 基本用法&#xff1a; find <path>&#xff1a;指定要搜索的起始路径&#xff08;默认…

【Shell】Shell编程之免交互

免交互&#xff1a;不需要人为控制就可以完成的自动化操作 自动化运维 Shell脚本和免交互是一个概念&#xff0c;但是两种写法 here document 使用i/o重定向的方式将命令的列表提供给交互式的程序或者命令 是一种标准输入&#xff0c;只能接受正确的指令或命令&#x…

1-Linux的目录结构

Linux的目录结构是规定好的&#xff0c;不可以随意进行更改&#xff01; Linux的文件系统是采用级层式的树状目录结构&#xff0c;最上层是根目录–/&#xff0c;然后再在根目录下创建其它的目录。 各个目录中主要负责的功能和作用如下&#xff1a;&#xff08;主体的结构一定…

引入第三方字体库 第三方字体库Google Fonts

googlefonts官方网站 googlefonts中国网站 本人是在微信小程序中引入 在static中建一个文件夹font-family 例如字体链接&#xff1a;https://fonts.font.im/css?familyKirangHaerang 将该链接的返回的资源的复制到css文件中 font-family.css /* [0] */ font-face {font-fam…

通过cups接口,以代码形式设置默认打印机

1. 完整代码 #include "cups.h" #include <errno.h> #include <iostream>#define HTTP_MAX_URI 1024/** validate_name() - Make sure the printer name only contains valid chars.*/static int /* O - 0 if name is no good, 1 …

使用JMeter进行接口测试教程

安装 使用JMeter的前提需要安装JDK&#xff0c;需要JDK1.7以上版本目前在用的是JMeter5.2版本&#xff0c;大家可自行下载解压使用 运行 进入解压路径如E: \apache-jmeter-5.2\bin&#xff0c;双击jmeter.bat启动运行 启动后默认为英文版本&#xff0c;可通过Options – Ch…

专项练习-04编程语言-03JAVA-04

1. 设Tree为已定义的类名&#xff0c;下列语句能正确创建 Tree 对象的是 。A Tree tnew Tree; B Tree tnew Tree(); C Tree tTree(); D Tree t[ ]new Tree[10]; 正确答案&#xff1a;B 官方解析&#xff1a;暂无官方题目解析&#xff0c;去讨论区看看吧&#xff01; 知识点&…

使用node内置test runner,和 Jest say 拜拜

参考 https://nodejs.org/dist/latest-v20.x/docs/api/test.html#test-runner 在之前&#xff0c;我们写单元测试&#xff0c;必须安装第三方依赖包&#xff0c;而从node 20.0.0 版本之后&#xff0c;可以告别繁琐的第三方依赖包啦&#xff0c;可直接使用node的内置test runner…

centos中修改防火墙端口开放配置

1、直接进入文件修改 vim /etc/sysconfig/iptables 2、添加需要开放的端口 &#xff08;1&#xff09;添加需要开放的单个端口 4001 -A INPUT -m state --state NEW -m tcp -p tcp --dport 4001 -j ACCEPT &#xff08;2&#xff09;添加需要开放的某个网段端口 4001:4020 …

需求管理中最易忽视的6大重点

需求管理是产品经理的重点工作&#xff0c;如果无法有效进行需求管理&#xff0c;往往会引起需求变更、项目延期以及成本增加等问题。那么如何对需求进行高效管理&#xff0c;我们在需求管理中&#xff0c;往往最容易忽视的重点都有哪些&#xff1f; 1、重视项目整体管理计划 首…

VMWare虚拟机常用操作命令

今日一语&#xff1a;做到所有的细节都不放过&#xff0c;则可以避免99%已知的风险&#xff0c;但大多数都因懒惰而甘愿承受风险&#xff0c;至此悔不当初 查看虚拟机在本机网络的IP ip addr 本地向虚拟机传送文件 scp 文件 rootpath 虚拟机路径 enter后输入密码即可传输&am…

运维——编写脚本,使用mysqldump实现分库分表备份。

编写脚本&#xff0c;使用mysqldump实现分库分表备份。 #!/bin/bash# MySQL连接参数 DB_HOST"localhost" DB_PORT"3306" DB_USER"your_username" DB_PASSWORD"your_password"# 备份保存路径 BACKUP_DIR"/path/to/backup"# …

8-js高级-7(理解js的事件循环)

一、前言 JS是单线程语言&#xff0c;但是又可以做到异步处理高并发请求&#xff0c;这时就用到了JavaScript的事件循环机制 理解事件循环&#xff0c;可以帮助我们准确分析和运用各种异步形式&#xff0c;减少代码的不确定性&#xff0c;在一些执行效率优化上也能有明确的思路…

Qt设置开机自启动无法读取配置文件

问题&#xff1a; Qt5.9.4再注册表中加入开机自启动后&#xff0c;每次开机可以启动&#xff0c;但是无法读取配置文件 解决方案 再main()方法中加入QDir::setCurrent(QCoreApplication::applicationDirPath());即可。 static void AutoRunWithSystem(bool bAutoRun) {// 获取…

账号列表的删除编辑提交

<template><div><plan title"账号列表"><!-- selection-change"handleSelectionChange"添加这个属性就是点击可以得到你想要的value值 --><el-tablestyle"width: 100%":data"list"selection-change"h…

视频基础知识

1.视频比特率 视频的比特率是指传输过程中单位时间传输的数据量。可以理解为视频的编码采样率。单位是kbps&#xff0c;即每秒千比特。视频比特率是决定视频清晰度的一个重要指标。比特率越高&#xff0c;视频越清晰&#xff0c;但数据量也会越大。比如一部100分钟的电影&#…

K8S初级入门系列之五-Pod的高级特性

一、前言 前一篇我们了解了Pod的基本概念和操作&#xff0c;本篇我们继续研究Pod的一些高级特性&#xff0c;包括Pod的生命周期&#xff0c;pod探针&#xff0c;pod的调度等。 二、生命周期 1、Pod的生命周期 Pod的生命周期示意图如下&#xff1a; 挂起(Pending)&#xff0c…