css增加点击区域宽度


<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
		#click{
			margin: 300px auto;
			width: 100px;
			height: 100px;
			background: #000;
			cursor: pointer;
		}
	</style>
</head>
<body>
	<div id="click"></div>
</body>
</html>

如上代码只能够在可见的那个黑色的正方形中点击。

为了扩大可点击的区域,我们现在有几种办法:

  • 方法1,设置一层透明边框
border: 100px solid transparent;
background-clip: padding-box;

如果按钮有背景色,那么边框很可能会扩大按钮的可视尺寸。于是可以采用background-clip属性将背景限制在padding-box区域内。
补充一句,IE9以下的IE不支持background-clip.
它有三个可选的值background-clip: border-box(背景被裁剪到边框盒)|padding-box(背景被裁剪到内边距)|content-box(背景被采集到内容框);
关于原理和各个细节 ---!!! 待更

  • 方法2,利用伪元素
//首先,我们将click设置成relative,之后伪元素设置为absolute
                #click{
                    position:relative;
                }
		#click::before{
			content: '';
			position: absolute;
			top: -100px;
			bottom: -100px;
			left: -100px;
			right: -100px;
		}

我的疑问,那么,当我们要求button为fixed的时候,这个时候怎么做?---!!!待更


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM