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;
        }
相关推荐
神算大模型APi--天枢6465 小时前
合规落地加速期,大模型后端开发与部署的实战指南
大数据·前端·人工智能·架构·硬件架构
四瓣纸鹤5 小时前
F2图表柱状图添加文本标注
前端·javascript·antv/f2
inferno5 小时前
HTML基础(第二部分)
前端·html
Dreamcatcher_AC5 小时前
Ajax技术:前后端交互全解析
前端·ajax
韭菜炒大葱5 小时前
TailwindCSS:从“样式民工”到“UI乐高大师”的逆袭
前端·面试·编程语言
whyfail5 小时前
CSS实现水滴样式
前端·css
C_心欲无痕5 小时前
vue3 - watchEffect对响应式副作用进行管理
前端·javascript·vue.js
阿星AI工作室5 小时前
破防了!阿星一年用AI撸了50个项目,这10条避坑经验你必须知道
前端·人工智能
KoalaShane5 小时前
Web 3D设计[Three.js]关于右键点击Canvas旋转模型,在其他元素上触发右键菜单问题
前端·javascript·3d
借个火er5 小时前
React 19 源码全景图:从宏观到微观
前端