麻烦老师解答 谢谢

麻烦老师解答 谢谢

1

a{

            width200px;


            background-colorred;


            padding20px;

            margin40px;

        }

<a href="">wenzi</a>

http://img1.sycdn.imooc.com//climg/60d11a7f09de147d18860910.jpg

这里的padding 和margin 都表示上下左右的值,而页面检查也是有上下左右的各个数值,那是代表都能生效吗?


2

还有auto这个属性值是代表什么 自适应吗?

例如padding:auto 10px; 这个表示上下根据左右的变换而变换吗?

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

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

2回答
好帮手慕久久 2021-06-23 11:04:26

同学你好,这只是谷歌浏览器的显示问题,如下:

块级元素要独占一行显示,即块级元素要占满整行,因此在谷歌浏览器上,为了表示这一特性,即使块级元素不设置margin样式,审核元素时,元素右侧也会有肉粉色的框,例如:

http://img1.sycdn.imooc.com//climg/60d2a2a0098157bc18840773.jpg

而margin也是用肉粉色的框表示,所以a右侧的粉框就很大(右侧粉框并不是表示margin很大,margin还是设置的值):

http://img1.sycdn.imooc.com//climg/60d2a1e6091e3db518640721.jpg

这只是谷歌的问题,如果换成火狐,效果如下:

http://img1.sycdn.imooc.com//climg/60d2a41309964fb719180928.jpg

祝学习愉快!

  • 提问者 夜的解忧铺 #1

    对之前的问题 再次尝试了下 ,麻烦老师解答下 谢谢

    1

    <style>

            div{

                width200px;

                height200px;

                background-color#0f0;

            }


            a{

               border1px solid red;

                padding20px;

                /* display: block; */

            }

        </style>

    </head>

    <body>

            <div>a上面的内容</div>

            <a href="">我是a</a>

            <div>a下面的内容</div>

    </body>

    效果如下:

    http://img1.sycdn.imooc.com//climg/60d370330949de2916720787.jpg

    padding 是在行内元素四个方向 都不生效吗 ? 但看起来左右是生效的,加了边框之后,上下看起来也是有效果,只是上下没实际作用,不加边框似乎起不到作用


    转为块级元素才生效

    http://img1.sycdn.imooc.com//climg/60d370aa09e68e0117730714.jpg

    http://img1.sycdn.imooc.com//climg/60d37357094bab4e16620934.jpg


    2

    margin


        <style>

            

            div{

                width200px;

                height200px;

                background-color#0f0;

            }


            a{

               border1px solid red;

                margin20px;

                /* display: block; */

            }

        </style>

    </head>

    <body>

            <div>a上面的内容</div>

            <a href="">我是a</a>

            <div>a下面的内容</div>

    </body>

    效果如下

    http://img1.sycdn.imooc.com//climg/60d37139090bbdee17960784.jpg

    margin是左右两个方向在行内元素可以生效,上下不生效

    2021-06-24 01:46:11
  • 好帮手慕久久 回复 提问者 夜的解忧铺 #2

    同学你好,解答如下:

    1、行内元素设置四个方向的padding,盒模型中会将四个padding都展示出来,但是真正起作用的(“将其他元素推开一定的距离”)只有左右padding。上下padding,可以把元素撑起来,但是实际上并不会起到“推开”的作用:

    http://img1.sycdn.imooc.com//climg/60d3ef8b0966458810110527.jpg

    2、理解的正确。给行内元素设置margin,左右margin有效,但是上下margin无效。

    因此,不要给行内元素设置上下margin,因为会没有效果。而上下padding,可以将元素撑开,让视觉效果好看,比如:

    http://img1.sycdn.imooc.com//climg/60d3f17809298c2013460520.jpg

    http://img1.sycdn.imooc.com//climg/60d3f1bf099c5fb513770369.jpg

    当想要实现上图中的效果时,可以考虑设置四个方向的padding。但是当想要实现“推开元素”效果时,​则不能设置上下padding,因为上下padding没有“推开”效果。

    祝学习愉快!

    2021-06-24 10:47:34
好帮手慕久久 2021-06-22 10:26:56

同学你好,解答如下:

1、如下盒模型含义是给a设置了四个paddding和4个margin:

http://img1.sycdn.imooc.com//climg/60d144bd096cc9da05100330.jpg

由于语法上没有错误,所以盒模型中会将a的margin、padding都显示出来。

但是盒模型中能显示出来,不代表在页面效果上,margin和padding就是生效了的,比如a的上下padding就不会生效:

http://img1.sycdn.imooc.com//climg/60d145590959544406990398.jpg

http://img1.sycdn.imooc.com//climg/60d1458f091af35b10400315.jpg

再比如a的上下margin也没有效果:

http://img1.sycdn.imooc.com//climg/60d145d9091f6d5209800272.jpg

所以盒模型只是告诉了我们元素设置了哪些内容,而到底有没有效果,还有结合页面效果来分析。

2、​auto常翻译成“自适应”,它的意思让浏览器自己计算。

原则上讲,padding:auto 10px;表示上下边距让浏览器自己计算,auto并不会跟随左右的值变化,而是浏览器会根据元素上下方向的空间信息,自己计算出padding值。但是,实际效果上,给元素设置padding是auto后,浏览器并不会自动计算,而是会将paddding都设置成0,所以padding几乎不会设置成auto,了解即可。

祝学习愉快!

  • 提问者 夜的解忧铺 #1

    http://img1.sycdn.imooc.com//climg/60d1f3590981c04118870955.jpg

    a{        

        ​    ​    ​width100px;

                height100px;

                padding20px;

                margin40px;

                displayblock;

                text-aligncenter;

            }

    将a转换成块级元素后,padding和margin就能显示效果,但是margin为什么铺满了整个屏幕,外边距不应该也是按照给的数值来变化吗?

    2021-06-22 22:29:01
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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