css基础(27)_行内、行内块元素之间的空白问题

行内、行内块元素之间的空白问题

产生的原因:
行内元素、行内块元素 ,彼此之间的换行会被浏览器解析为一个空白字符。

案例一:

html 复制代码
<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <title>行内元素之间的空白问题</title>
</head>
<style>
    div{
        height: 500px;
        font-size: 20px;
    }
    .box1{
        background-color: aquamarine;
    }
    .box2{
        background-color:blueviolet;
    }
    .box3{
        background-color:burlywood;
    }
</style>
<body>
    <div>
        <span class="box1">张三</span>
        <span class="box2">李四</span>
        <span class="box3">王五</span>
    </div>  
</body>
</html>

解决方案:
方案一:去掉换行和空格。

html 复制代码
<body>
    <div>
        <span class="box1">张三</span><span class="box2">李四</span><span class="box3">王五</span>
    </div>  
</body>

方案二 :给父元素设置font-size:0,在给需要显示文字的元素,单独设置字体大小。

html 复制代码
<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <title>行内元素之间的空白问题</title>
</head>
<style>
    div{
        height: 500px;
        font-size: 0px;
    }
    .box1{
        font-size: 20px;
        background-color: aquamarine;
    }
    .box2{
        font-size: 20px;
        background-color:blueviolet;
    }
    .box3{
        font-size: 20px;
        background-color:burlywood;
    }
</style>
<body>
    <div>
        <span class="box1">张三</span>
        <span class="box2">李四</span>
        <span class="box3">王五</span>
    </div>  
</body>
</html>

行内块的幽灵空白问题

产生原因:

行内块元素与文本的基线 对齐,而文本的基线与文本最低端之间是有一定距离的。

案例二:

html 复制代码
<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <title>行内元素、行内块元素之间的空白问题</title>
    <style>
        div{
            background-color: cadetblue;
        }
    </style>
</head>
<body>
    <div>
        <img src="../news_picture/no_picture1.png" alt="">xxxg
    </div>
</body>
</html>

解决方案:

方案一:给行内块设置vertical,值不为baseline即可,设置为middle、bottom、top均可。

css 复制代码
        div {
            background-color: cadetblue;
        }

        img {
            vertical-align: bottom;
        }

方案二:若父元素中只有一张图片(不含其他文字、字母等),设置图片为display:block

css 复制代码
        div{
            background-color: cadetblue;
        }
        img{
            display: block;
        }
相关推荐
小小愿望几秒前
前端读取与导出XLSX文件实战指南(React+Ant Design)
前端
小小愿望10 分钟前
JavaScript生成随机数的全面指南:别再只会用Math.random()了!
前端
Jackson__17 分钟前
RAG究竟是什么?一文搞懂大模型的记忆增强术
前端
雲墨款哥19 分钟前
JS算法练习-Day10-判断单调数列
前端·javascript·算法
前端市界19 分钟前
前端视角: PyQt6+Vue3 跨界开发实战
前端·qt·pyqt
阅文作家助手开发团队_山神21 分钟前
第四章:Flutter自定义Engine本地依赖与打包流程
前端·flutter
JuneXcy24 分钟前
11.web api 2
前端·javascript·html
zYear29 分钟前
Elpis 全栈应用框架-- 总结
前端·javascript
Juchecar1 小时前
分析:将现代开源浏览器的JavaScript引擎更换为Python的可行性与操作
前端·javascript·python
极客小俊1 小时前
Font Awesome 一个基于CSS和LESS的免费图标库工具包
前端