老师 这个练习正确吗?vertical-align: middle;为什么不是居中呢?

来源:4-3 编程练习

Alvin24

2019-01-17 15:25:42

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Document</title>

<style type="text/css">

div{width: 100%; height: 200px;background-color: #eee;text-align: center;}

p{ line-height: 5em; font-size: 2em;  }

p .two{color: red; text-decoration: underline; vertical-align: middle;}

p .one{font-size: 2em;}


</style>

</head>

<body>

<div>

   <p>

       <img src="http://climg.mukewang.com/59c21bae000157fa01000059.jpg"/><span class="one">CSS层叠样式表</span>&nbsp;&nbsp;<span class="two">(cascading style sheets)</span>

   </p>

</div>

</body>

</html>


写回答

2回答

好帮手慕夭夭

2019-01-17

你好同学 , 能够垂直居中是因为p元素设置了行高line-height: 5em; ,当元素不设置高度的时候 , 行高也能把盒子撑开 ,因为文字行高的上下边距都是一样的 ,此时达到了垂直居中的效果 ,同学可以自己测试一下:

http://img.mukewang.com/climg/5c40551f0001f74217520586.jpg

希望解答了你的疑惑 , 祝学习愉快 ,望采纳 .

0

qq__淺唱_0

2019-01-17

你好同学,代码中你只对.two做了垂直居中,还有.one和img也需要写垂直居中哦,还有建议你div里不要设置高度(height)能够更好的居中显示哦。

http://img.mukewang.com/climg/5c40315600013a4405430334.jpg

0
hlvin24
h 你好!为什么在这里不用设置行高和行同等数值 就垂直居中了 就是vertical-align属性决定的吗?
h019-01-17
共1条回复

0 学习 · 36712 问题

查看课程