css line-height & 图片底部间隙的处理
前言:这是笔者学习之后自己的理解与整理。如果有错误或者疑问的地方,请大家指正,我会持续更新!
看大牛张鑫旭的视屏可能会理解的更深一些,点击这里 。
line-height 的学习
line-height,两行文字的基线之间的距离;
基线,英语练习本中就有,顶线,中线,基线,底线;
行内框盒子模型:
- 内容区域(content area),一个围绕文字的看不到的盒子,相当于鼠标选i中时的区域,只和 font-size、font-family 有关。
- 内联盒子(inline boxes),不会让内容成块显示,而是排成一行(inline),如果只是文字,就是匿名内联盒子,如 span。
- 行框盒子(line boxes),每一行都是一个行框盒子,由内联盒子组成,如果换行,那就是两个行框盒子。
- 包含盒子(containing box),由行框盒子组成,如 p。
内联元素的高度可以说是由行高决定的;
高度的表现不是行高,是内容区域和行间距, 行高(line-height) = 内容区域高度(content area) + 行间距(vertical spacing):
- line-height:normal;(默认值,与 font-size 和 font-family 有关)
- line-height:number;(根据 font-size 大小计算,相乘的结果就是行高)
- line-height:length;(固定值,em、rem、px)
- line-height:percent;(根据 font-size 计算)
- line-height:inherit;(继承行高,input 默认的行高是 normal)
阅读类网站行高一般设置 1.5 就好了;网站开发匹配20px(20/font-size);
body{font-size:14px; line-height:1.4286}
图片底部间隙
图文混排的情况下,inline 元素在默认情况下的 vertial-align 是 baseline(基线)对齐的。
这时,容器高度 = 文字行高 - 基线位置高度 + inline元素高度,所以图片下边会有一段间隙。
消除底部间隙的方法:
- 改变图片元素类型,vertical-align 只对 inline 和 inline-block 元素有效,图片设置 display:block 之后就不受影响了。
- 图片设置底线对齐,vertical-align:bottom 。
- 父容器行高足够小,基线上移,父容器设置 line-height:0 或者font-size:0 。

<style type="text/css">
* {
padding: 0;
margin: 0;
} .wrapper {
width: 300px;
background: #0ff;
margin: 100px;
line-height: 0;
/*font-size: 0;也可以哦,0*0=0 */
} .wrapper img {
width: 150px;
}
</style>
<div class="wrapper">
<img src="data:images/1.jpg" />
</div>
css line-height & 图片底部间隙的处理的更多相关文章
- line-height与图片底部间隙的学习整理转述
前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! 看大牛张鑫旭的视屏可能会理解的更深一些,点击这里: line-height,两行文字的基线之间的距离: 基 ...
- css插入背景图片底部有白边的解决方法
相信很多小伙伴遇到过用CSS插入背景图时,底部出现白边的情况,如下图: 个人总结了2个方法如下: 解决方法1:给图片都加上 vertical-align: middle属性.有时,移动端也会有类似 ...
- [css] line boxes
原文链接:http://www.zhangxinxu.com/wordpress/2010/01/css-float%E6%B5%AE%E5%8A%A8%E7%9A%84%E6%B7%B1%E5%85 ...
- img只显示图片一部分 或 css设置背景图片只显示图片指定区域
17:14 2016/3/22img只显示图片一部分 或 css设置背景图片只显示图片指定区域 background-position: 100% 56%; 设置背景图片显示图片的哪个坐标区域,图片左 ...
- CSS如何实现图片上下垂直居中
方法一: 使用margin方式,使图片在div中上下垂直居中.margin-top值的计算方式是:div的高度/2-图片高度/2. 代码实例如下: <!DOCTYPE html><h ...
- 如何利用CSS代码使图片和文字在同一行显示且对齐
对于初学css的新手朋友来说,经常会遇到这样一个问题,当文字和图片出现在同一行或者同一个div里面的时候,在浏览器中运行出来的显示效果往往是在不同的行,那么,我们怎么才能利用CSS代码使图片和文字在同 ...
- CSS中背景图片定位方法
转自:http://www.ruanyifeng.com/blog/2008/05/css_background_image_positioning.html 作者: 阮一峰 日期: 2008年5月 ...
- <转载>使用css让大图片不超过网页宽度
让大图片不超过网页宽度,让图片不撑破通过CSS样式设置的DIV宽度! 接下来,我们来介绍下网站在开发DIV+CSS的时候会遇到一个问题,在发布一个大图片的时候因为图片过宽会撑破自己设置的div宽度的问 ...
- css中height 100vh的应用场景,动态高度百分比布局,浏览器视区大小单位
css中height 100vh的应用场景,动态高度百分比布局,浏览器视区大小单位 height:100vh 一些只能vw, vh才能完成的应用场景: 1. 场景之:元素的尺寸限制 vw vh 主要是 ...
随机推荐
- C语言--输入输出格式
一.PTA实验作业 题目1:7-3 温度转换 本题要求编写程序,计算华氏温度150°F对应的摄氏温度.计算公式:C=5×(F−32)/9,式中:C表示摄氏温度,F表示华氏温度,输出数据要求为整型. 1 ...
- 如何用Deepin-wine安装运行win32的程序
创建容器 容器就是win32程序运行的环境,可以理解为一个极小的windows,在Linux下面实际对应一个文件目录,如QQ对应的容器目录是~/.deepinwine/Deepin-QQ. 创建容器最 ...
- git sub module
https://github.com/ViRb3/de4dot-cex/blob/master/.gitmodules git submodule sync command - what is it ...
- How to transform the day time images to night time ? A series of paper review and some thinkings about this point.
How to transform the day time images to night time ? A series of paper review and some thinkings ab ...
- openwrt环境中某个运行在host端的软件如何安装到openwrt的$(STAGING_DIR_HOST)/bin下
可参考示例:见'git grep host-build.mk package/{system,utils}'
- 简易的CRM系统案例之Struts2+Hibernate3+JSP+MySQL版本
改造上一版本的DAO层 简易的CRM系统案例之Struts2+JSP+MySQL版本 src文件下hibernate.cfg.xml <!DOCTYPE hibernate-configurat ...
- 通过Redis的list来实现 Server - Client 的同步通信
Redis实现类似同步方法调用的功能(一) 首先声明,这么干纯粹是为了好玩. 通常我们用Redis主要是为了存储一些数据,由于数据在内存里,所以查询更新很快.同时我们也可以利用 Pub/Sub 功能来 ...
- linux chown 命令用法
[-cfhvR] [--help] [--version] user[:group] file 比如 chown chown root /home 把/home的属主改成root用户使用权限 : ...
- APPSCAN使用外部浏览器的方法
在使用appscan扫描时,自带浏览器可能存在兼容性问题(比如HTML5),故需要用到其他浏览器.在做139邮箱HTML5项目,需要使用chrome浏览器进行扫描.因此分享下如何使用外部浏览器,将之前 ...
- 【418】C语言ADT实现Quack(stack+queue)
quack.h #include <stdio.h> #include <stdlib.h> #include <assert.h> typedef struct ...