自定义复选框CheckBox的样式

需求:默认样式是第一个  点击后样式是第二个

    

实现原理:  第一效果实际上是一个div   第二效果是多选按钮    开始多选按钮隐藏  点击div 多选选中且显示  取消打钩多选隐藏 div显示  

实现代码:

          

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<%@include file="/common/common_easyui.jsp"%>
<link href="<%=basePath%>/css/table.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript">
$(function(){
// 这里是实现隐藏和显现的地方  要注意一下   不要在标签上通过click属性调用函数   不然this效果不对(不太了解的话可以看一下我的另一篇博文说的是JS中this的问题)  当然你也可以不用this  
	$(".checkboxDiv").click(function(){
		if($(this).is(":visible")){
			$(this).next().show();
			$(this).next().prop("checked",true);
			$(this).hide();	
		}
	});
	$(".checkbox").click(function(){
		if($(this).is(":visible")){
			$(this).prev().show();
			$(this).hide();	
		}
	});
});
</script>
<style type="text/css"> 
//这里是div样式 
 .checkboxDiv{
   width:20px;
   height:20px;
   border:1px solid #bfbfbf;
   background-color: #eeeeee;
   box-sizing: border-box;
   margin:0 auto;
   box-shadow: 0px 0px 1px #888888
   }
 .checkbox{
     display:none
   }
   
</style>
</head>
<body>
    <div class="checkboxDiv">—</div><input type="checkbox" name="listDataCheckbox" class="checkbox"/> 
</body>
</html>          

CSS自定义复选框是一种使用CSS样式自定义HTML复选框的方法。通过使用一些CSS属性和伪类选择器,我们可以改变复选框的外观和行为。 首先,我们可以使用checkbox标签来创建一个复选框。然后,通过设置display属性为none,我们可以隐藏原始的复选框,以便自定义其外观。 接下来,我们可以使用label标签来创建一个自定义复选框图标。通过设置label的display属性为inline-block,并且设置其宽度、高度、背景颜色等属性,我们可以定义复选框的外观。 要实现当复选框被选中时的效果,我们可以使用:checked伪类选择器。通过设置:checked伪类选择器下的label的背景颜色或其他属性,我们可以改变复选框被选中时的样式。 除了基本的样式外,我们还可以使用伪元素选择器,如:before和:after来创建复选框勾选图标。通过设置这些伪元素选择器的内容、位置和样式,我们可以定义复选框被选中时的勾选图标。 最后,我们可以通过使用CSS动画和过渡属性,为复选框添加动态效果。例如,通过设置复选框的过渡属性和:hover伪类选择器下的样式,我们可以在鼠标悬停时为复选框添加过渡效果。 总的来说,CSS自定义复选框可以帮助我们实现更加个性化和美观的复选框样式。通过使用一些CSS属性、伪类选择器和伪元素选择器,我们可以根据需求自定义复选框的外观和行为,并通过动画和过渡属性为其添加动态效果。这为我们提供了更大的设计自由度和灵活性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值