4-3编程练习检查

4-3编程练习检查

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>文本样式</title>
        <style type="text/css">
           /*写出CSS样式*/
             div{
                 background-color:#eee;
                 font-size:2em;
                 height:5em;
                }              
                p{
                    text-align:center;
                    vertical-align: middle;
                }
                .one{  
                    font-size:2em;
                    text-align:center;
                    vertical-align: middle;
                }
                .two{  
                    text-align:center;
                    vertical-align: middle;
                    text-decoration:underline;
                    color:red;
                }
        </style>
    </head>
    <body>
          <!--写出html代码-->
      <div>
        <p><img src="http://img1.sycdn.imooc.com/climg//59c21bae000157fa01000059.jpg">
           <span class="one">CSS层叠样式表</span>
           <span class="two">(Cascading Style Sheets)</span>
        </p>
      </div>
    </body>
</html>

请问老师,想问一下,我的图片和文字不垂直居中。
不知道该怎么设置。


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
好帮手慕夭夭 2020-09-01 10:06:22

同学你好,问题解答如下:

1.vertical-align不可以继承的,可以继承的样式一般是文本相关的,例如文字颜色,文字大小,行高等。

2.不可以注释,因为text-align: center;是设置水平居中的,去掉之后,内容整体就不会水平居中了。自己可以去掉看看效果就明白了。

(去掉不能水平居中)

http://img1.sycdn.imooc.com//climg/5f4dab6009849a9d18950177.jpg

3.不是的,你可以看一下老师上次的截图,基线的对齐,并不是互相的。如下图就直观的展示出来,文字的顶线(也就是顶部)与图片的中线是对齐的。所以文字相对于图片来说,是垂直居中对齐了。如果想要图片也相对于文字的中线对齐,那么就需要给图片也设置垂直居中对齐,即图片的中线和文字的中线对相互对齐了。这里可能不好理解,可以自己设置垂直居中,然后去掉某一个元素的居中感受一下效果,可以更直观更容易理解一点哦。

http://img1.sycdn.imooc.com//climg/5f4da950092a5c4710170124.jpg

祝学习愉快~

好帮手慕言 2020-08-30 10:15:36

同学你好,在任务中会有提示的,如下:

http://img1.sycdn.imooc.com//climg/5f4b0b7e09c1e1c805120384.jpg

同学可以按照提示自己写一写,如果哪里不明白可以提问,老师有针对性的帮助同学解答,这样同学才能进步哟,另外:同学可以在代码中添加注释,会让自己的思路更清晰些

祝学习愉快~

好帮手慕夭夭 2020-08-27 09:52:46

同学你好,参考如下设置:

1.vertical-align是设置基线对齐的,也就是几个元素相互对齐方式。例如如下两个span的基线相互垂直居中。

http://img1.sycdn.imooc.com//climg/5f47111e09820e9c10990131.jpg

这个样式并不能设置元素在父容器中居中,重新理解一下。想要在父容器中居中,可以通过行高设置,原理为行高的值等于父容器高度值:

http://img1.sycdn.imooc.com//climg/5f4711790938f49703700120.jpg

2.如果几个元素想要互相垂直居中,那么需要给它们都设置垂直居中样式。代码中,忘记给图片设置垂直居中对齐,所以只有文字相对图片垂直居中,图片不会相对文字垂直居中对齐。

http://img1.sycdn.imooc.com//climg/5f47119a0976dfc210250125.jpg

如下设置:

http://img1.sycdn.imooc.com//climg/5f4711e8095e87c204880341.jpg

如果我的回答帮到了你,欢迎采纳,祝学习愉快~

  • 提问者 慕盖茨9513023 #1
    老师,您好,能否帮我理清一下答题的思路?答题步骤,我有点混乱,思路不清晰。
    2020-08-29 22:57:43
  • 提问者 慕盖茨9513023 #2
    老师,您好,我的想法是 p{verticla-align:middle;}可以继承给下面的图片和文字。这个不可行吗?我忘记继承条件了。希望老师可以指出错误。
    2020-08-31 22:43:10
  • 提问者 慕盖茨9513023 #3
    老师,您好,我的代码里的text-align:center;是不是可以注释掉了呢?因为这三个好像都不是水平居中?这个text-align:center;怎么理解呢?
    2020-08-31 22:44:43
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师