vertical-align和图片下方空白问题
<style>
.box1,.box2{
display: inline-block;
background-color:#f0f3f9;
width:150px;
height: 150px;
}
</style>
<div class="content">
<span class="box1"></span>
<span class="box2"></span>
</div>
两个盒子都没有内容时,能在一条水平线上
<div class="content">
<span class="box1"></span>
<span class="box2">x-baseline</span>
</div>
当第二个盒子有text内容时,两个盒子无法对齐。
一个inline-block元素,如果里面没有inline元素,或者overflow不是visible,则该元素的基线就是其margin底边缘,否则,其基线就是元素里面最后一行内联元素的基线。
box1里面没有内联元素,因此,基线就是容器的margin下边缘,也就是下边框下面的位置;而第二个框框里面有字符,纯正的内联元素,因此,box2的基线就是这些字符的基线,也就是字母x的下边缘了。于是,我们就看到了box1下边缘和box2里面字符x底边对齐的好戏。
说回vertical-align
vertical-align默认值是baseline, 也就是基线对齐。而基线是什么,基线就是字母X的下边缘。
经常碰到问题div里包含图片,父级没有指定高度的时候,图片下方有几个像素空白
<div class="content">
<img src=".picc.png" alt="">
</div>
.content{
width: 100%;
background: blue;
}
.content img{
width: 300px;
height: 300px;
}
原因图片的display属性默认是inline,而这个属性的vertical-align的默认值是baseline(基线)。所以就会出现上图的情况(图片底部出现一个小留白区域)。
解决方法
1.图片转为块元素 因为只有元素属于inline或是inline-block ,vertical-align属性才会起作用。
img{display:block;}
2.图片对其方式改为中间对齐
img{vertical-align:middle;}
3.父级设置font-size:0 改变行高
4.父级设置line-height:0 改变行高
5.图片转为浮动
img{float:left;}
vertical-align属性
vertical-align: baseline; /*默认。元素放置在父元素的基线上*/ vertical-align: sub; /*垂直对齐文本的下标*/ vertical-align: super; /*垂直对齐文本的上标*/ vertical-align: text-top; /*把元素的顶端与父元素字体的顶端对齐*/ vertical-align: text-bottom; /*把元素的底端与父元素字体的底端对齐。*/ vertical-align: middle; /*把此元素放置在父元素的中部*/ vertical-align: top; /*把元素的顶端与行中最高元素的顶端对齐*/ vertical-align: bottom; /*把元素的顶端与行中最低的元素的顶端对齐*/
vertical-align和图片下方空白问题的更多相关文章
- 高效开发之SASS篇 灵异留白事件——图片下方无故留白 你会用::before、::after吗 link 与 @import之对比 学习前端前必知的——HTTP协议详解 深入了解——CSS3新增属性 菜鸟进阶——grunt $(#form :input)与$(#form input)的区别
高效开发之SASS篇 作为通往前端大神之路的普通的一只学鸟,最近接触了一样稍微高逼格一点的神器,特与大家分享~ 他是谁? 作为前端开发人员,你肯定对css很熟悉,但是你知道css可以自定义吗?大家 ...
- 图片下方出现多3px的原因及解决方法
产生原因:主要是因为图片的垂直对齐方式vertical-align引发的,默认值是baseline,默认为此值时图片下方就会多出3px. 解决方案: 1.将图片的垂直对齐方式vertical-alig ...
- javascript焦点图(根据图片下方的小框自动播放)
html和css就不详细说明了,也是简单布局,通过定位把跟随图片的小框,定位到图片下方 <!DOCTYPE html> <html> <head> <meta ...
- css之图片下方定位遮掩层
需要的效果如图,图片下方加个遮掩层: html: <div class="listContent"> <div><img src="imag ...
- What is Vertical Align?
https://css-tricks.com/what-is-vertical-align/ ************************************************* CSS ...
- 如何解决div里面img图片下方有空白的问题?
空白产生原因: 图片默认的vertical-align是baseline,(元素放置在父元素的基线上,也就是xx下边距) 一个inline-block元素,如果里面没有inline元素,或者overf ...
- highchart 导出图片, 显示空白
使用highchart时, 导出的图片会变空白.. 解决方案: 不要加载grid.js
- R 语言消除pdf图片的空白
pdf 函数中,有一个参数onefile , 默认值为TRUE, 表示每张图片占用pdf 中的一页 当遇到pdf的前几页为空白时,是因为画图的代码产生了几张空白的图片 如果要消除前面的空白,只需要设 ...
- 在父容器div中图片下方有一条空隙问题
问题:<div><img src="mm1.jpg"></div> 然后,表现就是一张图片呈现,类似下面这样: 恩,看上去很正常,一切都是理所当 ...
随机推荐
- 几个时间:UTC、GMT、本地时间、Unix时间戳
UTC(Coordinated Universal Time)时间:协调世界时,即世界标准时间 GMT(Greenwich Mean Time):格林威治/格林尼治时间 GMT=UTC,均使用秒数来计 ...
- Cygwin下编译的程序不使用Cygwin.dll即可运行的命令 及常用命令简介
cc -mno-cygwin foo.c 1.$ ps PS的相关用法: QuoteUsage ps [-aefl] [-u uid]-f = show process uids, ppids-l = ...
- mysql----Nested SELECT Quiz
Nested SELECT quiz bbc name region area population gdp Afghanistan South Asia 652225 26000000 Alb ...
- WebAPI接口设计:SwaggerUI文档 / 统一响应格式 / 统一异常处理 / 统一权限验证
为什么还要写这类文章?因为我看过网上很多讲解的都不够全面,而本文结合实际工作讲解了swaggerui文档,统一响应格式,异常处理,权限验证等常用模块,并提供一套完善的案例源代码,在实际工作中可直接参考 ...
- go语言打造个人博客系统(一)
go语言打造个人博客系统(一) 为什么选择go语言? 听说go语言是在几年前,但真正深入了解他却是在2017年,因为当时作为讲师 ,需要准备go语言的课程,结果稍一接触立刻就喜欢上这门语言了,作为 ...
- Java的基础知识二
一.方法函数 函数也称为方法,就是定义在类中的具有特定功能的一段独立代码.用于定义功能,提高代码的复用性. 函数的特点1> 定义函数可以将功能代码进行封装,便于对该功能进行复用:2> 函数 ...
- LeetCode算法题-Invert Binary Tree
这是悦乐书的第194次更新,第199篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第55题(顺位题号是226).反转二叉树.例如: 输入: 4 / \ 2 7 / \ / ...
- Docker: docker container常用命令实战
容器管理,容器常用选项 选项 描述 -i, –interactive 交互式 -t, –tty 分配一个伪终端 -d, –detach 运行容器到后台 -e, –env 设置环境变量 -p, –pub ...
- spark SQL读取ORC文件从Driver启动到开始执行Task(或stage)间隔时间太长(计算Partition时间太长)且产出orc单个文件中stripe个数太多问题解决方案
1.背景: 控制上游文件个数每天7000个,每个文件大小小于256M,50亿条+,orc格式.查看每个文件的stripe个数,500个左右,查询命令:hdfs fsck viewfs://hadoop ...
- Spark Streaming和Kafka整合保证数据零丢失
当我们正确地部署好Spark Streaming,我们就可以使用Spark Streaming提供的零数据丢失机制.为了体验这个关键的特性,你需要满足以下几个先决条件: 1.输入的数据来自可靠的数据源 ...