本节学习CSS按钮样式定义。其实没啥新知识,就是把老知识玩出花样来~
如上例所示,上面左边的按钮是默认样式,右边的按钮定义了一些常用的样式属性,源码如下所示:
button { background-color: #46acb6; border: none; color: white; padding: 15px 32px; text-align: center; text-decoration: none; display: inline-block; font-size: 16px; }
通过background-color
属性可以设置按钮背景颜色,color
属性可设置按钮的前景色,按钮元素内文本颜色。
.button1 {background-color: #d4d854;} /* Green */ .button2 {background-color: #46acb6;} /* Blue */ .button3 {background-color: Tomato;} /* Red */ .button4 {background-color: #e7e7e7; color: black;} /* Gray */ .button5 {background-color: #555555;} /* Black */
通过font-size
属性可以定义按钮内字体大小。
.button1 {font-size: 10px;} .button2 {font-size: 12px;} .button3 {font-size: 16px;} .button4 {font-size: 20px;} .button5 {font-size: 24px;}
通过padding
属性可以定义按钮元素的内边距。
.button1 {padding: 10px 24px;} .button2 {padding: 12px 28px;} .button3 {padding: 14px 40px;} .button4 {padding: 32px 16px;} .button5 {padding: 16px;}
通过CSS中的border-radius
属性可以把按钮类元素设置成圆角。
.button1 {border-radius: 2px;} .button2 {border-radius: 4px;} .button3 {border-radius: 8px;} .button4 {border-radius: 12px;} .button5 {border-radius: 50%;}
通过CSS中的border
属性可以替按钮类元素添加上彩色边框。
.button1 { background-color: white; color: black; border: 2px solid #d4d854; /* Green */ } ...
通过伪类选择器:hover
可以设置按钮悬浮状态(hover)下的样式,比如改变其颜色。(上例中设置了transition-duration
属性以设置样式变化的过渡时长。)
.button { -webkit-transition-duration: 0.4s; /* Safari */ transition-duration: 0.4s; } .button:hover { background-color: #d4d854; /* Green */ color: white; } ...
按钮元素的阴影(shadow)可以通过CSS中的box-shadow
属性经来定义。
.button1 { box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19); } .button2:hover { box-shadow: 0 12px 16px 0 rgba(0,0,0,0.24), 0 17px 50px 0 rgba(0,0,0,0.19); }
当按钮属于disabled不可用按钮,可通过CSS的相关属性,将其表现得更加明显,暗示用户此按钮当前不可用。一般来说,可通过CSS中的opacity
属性将其设置成有一定透明度,同时设置cursor
属性来修饰悬浮状态下的鼠标样式。
.disabled { opacity: 0.6; cursor: not-allowed; }