代码如下:一个简单的div装在一个img中,

然而在预览时却发现这种情况

也就是说img下方会无缘无故出现一个空隙。然后你发现,只要给img元素加上一个属性

vertical-align:middle 就解决了问题!!!

所以这是为什么呢?

首先我们应该知道img是一个行内块元素,而行内块元素的默认对齐方式则是基线对其,下面通过我们熟悉的文字对齐来解释说明一下

像上图一样,图中文字的对其方式就是基线对齐,不过我们也会发现这样的话文字和底部会有一段距离,

而图片就相当于是其中的x,他的最底部对齐的是基线,所以当line-height到达一定高度时下方的距离就会存在。

针对上面的问题有如下解决方法

1、而当你设 div的line-height:0 时也可以解决问题,或者font-size:0也是可以的

2、当然你设置图片的margin-bottom也可以解决,不过会影响你div中的布局

3、当我们设置vertical-align为top bottom middle时则使得其不再相对基线对其而是相对于顶部或中部对齐,这样就不会产生间距了,而一般布局都是居中对齐,所以用middle时较多。

 

去除img下方的空白(vertical-align:middle)——原理的更多相关文章

  1. What is Vertical Align?

    https://css-tricks.com/what-is-vertical-align/ ************************************************* CSS ...

  2. iOS(Swift)学习笔记之去除UINavigationBar下方横线

    本文为原创文章,转载请标明出处 // 去除UINavigationBar下方横线 navigationController.navigationBar.shadowImage = UIImage() ...

  3. 如何解决div里面img图片下方有空白的问题?

    空白产生原因: 图片默认的vertical-align是baseline,(元素放置在父元素的基线上,也就是xx下边距) 一个inline-block元素,如果里面没有inline元素,或者overf ...

  4. js去除字符串的前后空白

    使用gravatar生成邮箱的头像时需要对邮箱地址哈希化,其中需要去除邮箱地址的首尾空白,查找了一些资料,总结一下 使用 js 提供的函数 trim() trim() 方法会删除一个字符串两端的空白字 ...

  5. CSS - 去除图片img底侧空白缝隙

    1. 图片底部有空隙 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  6. CSS font-size: 0去除内联元素空白间隙

    我们在编写HTML标签的时候,通常会使用换行,缩进来保证代码的可读性.同时,在编写CSS样式的时候,也会需要把一些元素设置为inline或inline-block.这样一来,有时在页面中会出现意外的空 ...

  7. 去除inline-block之间的空白

    做一个水平排列的导航通常有以下几种布局: 1.给一个浮动. 2.设置display为inline. 3.设置display为inline-block. 但要追求代码量最少的话,设置为inline元素或 ...

  8. 前端知识点回顾之重点篇——CSS中vertical align属性

    来源:https://www.cnblogs.com/shuiyi/p/5597187.html 行框的概念 红色(line-height)为行框的顶部和底部,绿色(font-size)为字体的高度, ...

  9. 浏览器兼容CSS代码:按钮文字垂直居中(input button text vertical align)

    经过测试的浏览器:IE6, IE7, IE8, IE9, Firefox, Chrome, Safiri, Maxthon 按钮的HTML代码: <input id="btn_comm ...

随机推荐

  1. RDD基本操作之Action

    Action介绍 在RDD上计算出来一个结果 把结果返回给driver program或保存在文件系统,count(),save 常用的Action reduce() 接收一个函数,作用在RDD两个类 ...

  2. StackOverflow 第四周周报及19年就业情况分析

    这是 Stack Overflow 第四周周报,两篇 Java.两篇 Python.公众号「渡码」为日更,欢迎关注.另外,我搜集了今年的就业数据,对招聘情况和岗位情况做了简单总结,想了解的朋友点这里. ...

  3. jsp 中include使用问题

    如果在需要在jsp页面做页面包含时 会使用到include 指令 来进行页面包含操作 这里是页面的头部 文件名称是head.jsp <%@ page language="java&qu ...

  4. java进阶文章优选链接,面试干货集合

    Java多线程: java多线程详细总结:https://blog.csdn.net/chenruijia170707/article/details/78505351 ThreadLocal 用法及 ...

  5. spring系列常用注解

    常见注解使用 - @SpringBootApplication,springboot的核心注解,用于开启自动配置,等效于@Configuraion.@ComponentScan和@EnableAuto ...

  6. 深入理解 DeepSea 和 Salt 部署工具 - Storage6

    学习 SUSE Storage 系列文章 (1)SUSE Storage6 实验环境搭建详细步骤 - Win10 + VMware WorkStation (2)SUSE Linux Enterpri ...

  7. 蓝松短视频SDK基本功能免费列表

    下载地址:https://github.com/LanSoSdk/LanSoEditor_common 功能免费. 个人和公司都可以商用,不需要和我们说明. 直接下载, 直接去用既可. 完全不需要和我 ...

  8. 使用gtest(googletest)进行c++单元测试

    这是系列文章的第三篇,前两篇https://www.cnblogs.com/gaopang/p/11243367.html和https://www.cnblogs.com/gaopang/p/1158 ...

  9. Shell之脚本检查与调试

    目录 Shell之脚本检查与调试 参考 脚本语法检查 脚本运行调试 Shell之脚本检查与调试

  10. vue中"‘webpack-dev-server’不是内部或外部命令,也不是可运行的程序"的报错

    在vue项目中发现了这个报错  解决办法将项目里的“node_modules”文件夹删除,然后重新运行cnpm install