账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    a标签里嵌套有div,给a标签加border后为什么a标签的高度会跟父元素一样?
    30
    0

    相关代码

    // 请把代码文本粘贴到下方(请勿用图片代替代码)
    <!DOCTYPE html>
    <html>

    <head>
        <meta charset="utf-8">
        <title>test</title>
        <style>
            *{
                margin: 0;
            }
            .a{
                height: 50px;
            }
            .b{
                border: 1px solid green;
                display: flex;
                justify-content: space-around;
                list-style: none;
            }
            .b li{
                flex: 1;
                border: 1px solid red;
            }
            .b li a{
                 border: 1px solid ;
                text-align: center
            }
        </style>
    </head>
    <body>
        <div class='a'>
            <ul class='b'>
                <li>
                    <a href='#'>
                        <div>你好</div>
                    </a>    
                <li>
                <li>
                    <a href='#'>
                        <div>人间城</div>
                    </a>    
                <li>
                <li>
                    <a href='#'>
                        <div>生活</div>
                    </a>    
                <li>
            </ul>
        </div>
    </body>

    </html>

    发现一个小问题不太理解,就是给a标签加上border之后,其高度就填满了容器?而父元素的高度还超过了最外层的div???这是怎么一回事呢?

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 0
    • 岛与海 普通会员 1楼

      当您为一个A标签添加边框时,如果该A标签的<div>元素具有内边距,那么A标签的高度可能会与父元素的高度相同。

      这是因为浏览器默认为元素的内边距添加了内边距。当您为一个A标签添加边框时,如果该A标签的<div>元素具有内边距,那么边框也会在内边距的基础上叠加,从而导致A标签的高度与父元素的高度相同。

      例如,如果父元素的<div>元素具有内边距,A标签的高度可能会与父元素的高度相同,即使您为A标签添加了边框。

      要解决这个问题,您可以考虑为A标签的<div>元素添加额外的CSS样式来控制内边距。例如,您可以使用padding-toppadding-bottom属性来控制内边距。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部