最终效果图
一些实现细节写在注释里面
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
a {
width: 230px;
height: 40px;
background-color: #55585a;
/* 将a标签默认的下划线取消 */
text-decoration: none;
color: #ffffff;
/* 将a标签模式转化为块级元素 */
display: block;
/* 首行要间隔两个单位 */
text-indent: 2em;
font-size: 14px;
/* 让文字的行高等于盒子的高度,可以让单行文字实现垂直居中 */
/* 可以自己拿Chrome测试一下 */
line-height: 40px;
}
a:hover {
background-color: #ff6700;
}
</style>
</head>
<body>
<a href="#">手机 电话卡</a>
<a href="#">电视 盒子</a>
<a href="#">笔记本 平板</a>
<a href="#">出行 穿戴</a>
<a href="#">智能 路由器</a>
<a href="#">健康 儿童</a></a>
<a href="#">耳机 音响</a>
</body>
</html>
注意:
在CSS里面没有单独的实现单行文字垂直居中的代码,因此我们要用到一个小技巧
让文字的行高等于盒子的高度,可以让单行文字实现垂直居中
这里附上原理图:
另外要注意一下:
如果行高小于盒子高度,文字会偏上
如果行高大于盒子高度,则文字会偏下
可以看一下这个图便于理解,也可以去Chrome里面测一下