checkbox的样式写成透明的,放在最上面,你的这个图片作为底图,每次点击复选框用JS判断下,如果是选择底图就是带钩的,没有选中底图换不带钩的。
在龙泉等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都做网站、网站制作 网站设计制作按需制作,公司网站建设,企业网站建设,高端网站设计,成都营销网站建设,外贸营销网站建设,龙泉网站建设费用合理。
用css3可以直接用图片作为背景就可以了,不需要用js。解决方法如下:
1、双击打开HBuilderX开发工具,在Web项目中新建静态页面canvas.html。
2、打开已新建的canvas.html文件,修改title标签里的文字内容。
3、在body/body标签内,插入一个canvas标签,并设置id属性值。
4、在canvas标签下,添加script标签并初始化canvas对象,调用自带的方法。
5、保存代码并运行项目,打开浏览器查看界面效果,可以发现绘制了一条线。
6、在style标签中,利用ID选择器设置canvas样式,添加背景色设置。
7、再次保存代码文件,并刷新浏览器,可以看到canvas画布背景色发生了改变。
给你说个思路吧:用图片代替复选框,单击替换图片为被选择中的图片,再单击则还原回最初的图片。唯一需要注意的是统计复选框数量有点麻烦。单纯依靠CSS定义估计很难,CSS不能控制图片的SRC属性。用JS吧。。。JS没那么讨厌的~
简单的动画”复选框
设置HTML创建一个标准的无序列表(为了方便测试,特别复制出一份代码)
ul
li
input type="checkbox" name="manager" id="manager" /
label for="manager"Project Manager/label
/li
li
input type="checkbox" name="webdesigner" id="webdesigner" /
label for="webdesigner"Web Designer/label
/li
li
input type="checkbox" name="webdev" id="webdev" /
label for="webdev"Web Developer/label
/li
li
input type="checkbox" name="seo" id="seo" /
label for="seo"SEO/label
/li
li
input type="checkbox" name="itstaff" id="itstaff" /
label for="itstaff"IT Staff/label
/li
li
input type="checkbox" name="csr" id="csr" /
label for="csr"Customer Service Representative/label
/li
/ul
首先,隐藏复选框
/* Hide the Ordinary Checkbox */
input[type="checkbox"] {
display: none;
}
然后需要在我们的列表和标签标记的相对位置和填充设置一些样式。
下一步需要使用伪代码在标签之前和之后设置样式。对于这部分,我们将设置复选框Font Awesome,用一个矢量图标。
/* Checkbox Icons */
label {
position: relative;
padding-left: 30px;
font-size: 30px;
cursor: pointer;
color: #fff;
padding: 16px 28px 0 0;
}
label:before, label:after {
font-family: FontAwesome;
font-size: 50px;
/*absolutely positioned*/
position: absolute; top: 0; left: -49px; right: 10px;
}
现在我们需要设置图标步骤之前和之后的复选框。
label:before {
content: '\f096'; /*checkbox unchecked */
}
label:after {
content: '\f00c'; /*checkbox checked*/
max-width: 0;
overflow: hidden;
opacity: 0.5;
font-size: 27px;
top: 16px;
left: -42px;
color: #f2ca27;
-webkit-transition: all 0.50s;
-moz-transition: all 0.50s;
-o-transition: all 0.50s;
transition: all 0.50s;
}
最后一步是设定一个目标,文本框和复选框后的伪代码,并给它一个最大宽度25像素之间和不透明度1。
/* Animating the Checkbox Icon */
input[type="checkbox"]:checked + label:after {
max-width: 25px;
opacity: 1;
margin-right: 90px;
}