自定义单选框样式方法

自定义单选框样式方法元素的初始样式都不怎么好看,我们一般修改样式会想到直接在那元素上添加样式,比如background、border等,在大多数元素上是可以这么做,但当遇上了单选框会毫无反应。例:<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF

大家好,又见面了,我是你们的朋友全栈君。

元素的初始样式都不怎么好看,我们一般修改样式会想到直接在那元素上添加样式,比如background、border等,在大多数元素上是可以这么做,但当遇上了单选框会毫无反应。

例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>style无法直接修改单选框样式</title>
    <style> .radio{ 
     width: 100px; height: 100px; background-color: red; } </style>
</head>
<body>
<input type="radio" class="radio"/>
</body>
</html>

在这里插入图片描述

怎么解决呢?

使用label进行伪元素(或一些标签,比如i,em,span等)和input绑定,隐藏单选框,显示伪元素,且使用css选择器:checked进行点击后伪元素(或绑定标签)内容(或样式)的修改。

以下例子只是修改伪元素的内容。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>修改单选框样式</title>
    <style> /*.radio{*/ /*width: 100px;*/ /*height: 100px;*/ /*background-color: red;*/ /*}*/ .radio { 
     display: none; } /* +代表相邻的元素 */ .radio + i { 
     font-style: normal; text-align: center; font-size: 16px; } /* ::after伪元素,使用伪元素,必须含有content属性,可以为'',但不可不写 */ .radio + i::after { 
     content: '☆'; } /* 点击后伪元素内容变化 */ .radio:checked + i::after { 
     content: '★'; } </style>
</head>
<body>
<label>
    <input type="radio" class="radio" name="aa" id="aa"/>
    <i></i>
    aa
</label>
<label>
    <input type="radio" class="radio" name="aa" id="bb"/>
    <i></i>
    bb
</label>
</body>
</html>

完成后的结果
在这里插入图片描述
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/141656.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Spring Boot—(11)SpringBoot使用Junit单元测试

    Spring Boot—(11)SpringBoot使用Junit单元测试欢迎关注公众号:java4all摘要:本文详细的记录了SpringBoot如何结合Junit写测试用例,如何执行,打包执行,忽略执行等操作,SpringBoot内置了Junit测试组件,使用很方便,不用再单独引入其他测试组件。演示环境:SpringBoot+mybatis开发工具:IntelliJIDEA1.pom.xml一般使用idea新建一个Sp…

    2022年6月9日
    41
  • 【MIME笔记】

    我最近对互联网的一些技术细节很感兴趣,打算做一系列的笔记。====…

    2022年1月18日
    47
  • ubuntu16.04安装qt5_qt安装哪些组件

    ubuntu16.04安装qt5_qt安装哪些组件Qt是一个跨平台的C++图形用户界面库,我们平时所说所使用的Qt,准确的来说是它的GUI编程部分。Qt提供给应用程序开发者建立图形用户界面所需要的功能,并且Qt很容易扩展。基本上,Qt和XWindow上的Motif、Openwin、GTK等图形界面库和Windows平台上的MFC、OWL、VCl以及ATl是相同类型的东西。一.安装Qt第一步:http://download.qt.io/ar……

    2022年10月15日
    4
  • python面试题-python相关

    python面试题-python相关

    2021年6月16日
    75
  • gitlab4.0备份还原

    gitlab4.0备份还原

    2021年6月16日
    90
  • system在c语言中_c语言system返回值

    system在c语言中_c语言system返回值需包含头文件:C标准库-<stdlib.h>文章目录描述声明参数返回值实例1实例2:列出windows机上当前目录下所有的文件和目录描述C库函数intsystem(constchar*command)把command指定的命令名称或程序名称传给要被命令处理器执行的主机环境,并在命令完成后返回。声明下面是system()函数的声明。intsystem(constchar*command)参数command–包含被请求变量名称的C字符串。

    2025年11月25日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号