css和html元素变宽从中间向两边扩展
效果:
代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
body{
text-align: center;
}
div{
display: inline-block;
width: 20px;
height: 20px;
background: red;
transition: 2s;
}
div:hover{
width: 100px;
}
</style>
</head>
<body>
<div></div>
</body>
</html>
主要因素:
1.body的text-align: center;
2.div的display: inline-block;
解释:
将div的父元素设置为文本居中,再将div设置为行级块元素之后div在body中永远居中,即使是hover之后变宽仍然居中,就会造成一种向两边扩展变宽的假象