css之line-height及图片文字垂直居中
css虽然没有算法,但还是很神奇的,踩到坑都不知道到底是哪里?看到张鑫旭大佬的博客讲的超级好https://www.zhangxinxu.com
行高line-height用到的频率极高,指一行文字的高度(两行文字间基线的距离)就像英文本子里的 倒数第二条线。
line-height与line boxes高度
css中起着高度作用的heigh以及line-height,如果一个便签没有定义height属性,那么最终表现的高度一定是line-height起作用。
一个空的<div></div>,没有设置高度,但在元素内添加文字,这个div就有了高度,我一直以为就是文字把div撑起来了啊,但事实并非如此。真正撑起高度的是line-height。

有图有真相的证明了真正撑起div的高度的不是文字内容,而是line-height。
那到底line-height行高是怎么产生高低的?在inline box 模型中。有个lineboxes(是看不见的,作用就是包裹文字),一行文字一个line boxes(每行文字都有一个line boxes包裹)。line boxes并没有什么特性,就高度。所以一个没有设置height属性的div的高度就是由一个个line boxes 的高度堆积而成的。
但line boxes的高度真正取决于里面的inline boxes。图片,文字,<span>便签等带inline属性的标签。他看哪个inline boxes的实际line-height值最高,最高个的那个line-height值作为line boxes的高度
行高的垂直居中性
上面那张测试的图,证明,无论你文字是大还是小,其占据空间都是文字内容的公共水平中垂线。即使line boxes的高度为0,但他的文字的水平中垂线对称分布,这一特性可以实现文字或图片的垂直居中对齐。
多图片垂直居中
因为多图片,但img不支持浮动,所有外面在套一层
方法1 图片北京定位法:background-position:center:
方法2 display:table-cell法
display: inline-block;
width: 200px;
text-align: center;
vertical-align: center;
border: 1px solid peru;
css之line-height及图片文字垂直居中的更多相关文章
- css 图片文字垂直居中
先来看张图片 相信很多css新手遇到过这种问题,就是当图片和文本显示在一行的时候,效果很奇葩,文字和图片没法对齐, 这时我们需要做的是: 1,先给块级元素设置 display: inline-bloc ...
- UIButton 设置图片文字垂直居中排列
#pragma mark 按钮图片文字垂直居中排列 -(void)setButtonContentCenter:(UIButton *)button { CGSize imgViewSize,titl ...
- css实现固定高度及未知高度文字垂直居中的完美解决方案
在工作当中我们经常碰到类似于"固定高度文字垂直居中及未知高度垂直居中问题",或者 "图片垂直居中问题",而我们最容易会想到使用表格来垂直居中,或者如果是单行文字 ...
- css 单行图片文字水平垂直居中汇总
(1) 水平居中 a. 行内元素水平居中 因为img是行内元素(行内块级元素也一样)父级元素设置text-align:center即可,例如: <div style="width: 6 ...
- 用CSS如何实现单行图片与文字垂直居中
图片样式为 以下为引用的内容:.style img{vertical-align:middle;.....} 如果STYLE中有其它如INPUT或其它内联元素可写成 以下为引用的内容:.style i ...
- CSS一个属性,让图片后的文字垂直居中,效果看得见
困扰我多年的疑难,终于解决了.哈哈哈,太爽了 背景 页面经常遇到,图片后面的文字显示在图片的中间部位,也就是说文字图片垂直居中. <div class="banner"> ...
- [HTML]DIV+CSS 文字垂直居中
在说到这个问题的时候,也许有人会问CSS中不是有vertical-align属性来设置垂直居中的吗?即使是某些浏览器不支持我只需做少许的CSS Hack技术就可以啊!所以在这里我还要啰嗦两句,CSS中 ...
- div+css文字垂直居中 解决左侧头像右侧姓名,姓名多换行后相对于头像仍居中显示
在说到这个问题的时候,也许有人会问CSS中不是有vertical-align属性来设置垂直居中的吗?即使是某些浏览器不支持我只需做少许的CSS Hack技术就可以啊!所以在这里我还要啰嗦两句,CSS中 ...
- CSS制作图片水平垂直居中 亲测推荐
空白标签实现图片的垂直居中 这种方法很有意思,也很有独特之处,我的思路也是来自于张鑫旭-鑫空间-鑫生活写的<大小不固定的图片.多行文字的水平垂直居中>一文中的使用空白图片实现垂直对齐.他主 ...
随机推荐
- abap将内表数据导出为excel文件
一个不错的方案: WHEN 'EXPORT'. "导出数据 DATA : GT_TEMP TYPE TABLE OF TY_ITEM WITH HEADER LINE. LOOP AT GT ...
- C# 应用程序单例(禁止多开) 获取.net版本号 以及 管理员权限
Mutex不仅提供跨线程的服务,还提供跨进程的服务.当在构造函数中为Mutex指定名称时,则会创建一个命名了的Mutex.其他线程创建Mutex时,如果指定的名称相同,则返回同一个互斥体,不论该线程位 ...
- python基础--字典
Python基础--字典 字典的常用函数: dict.clear( )--->无任何返回值 说明: 清除字典内的所有的元素 语法: In [5]: dict.clear? Type: metho ...
- JAVAEE第三周
2.背景:看到Session时,感到很熟悉,毕竟涉及到过类似的编程,用得最多的地点就是保存客户端的信息和记录,比如说你已经登陆过某个网站,下次访问时不想要麻烦的重新登陆你就就可以使用这个机制.Sess ...
- 【webpack学习笔记】a06-生产环境和开发环境配置
生产环境和开发环境的配置目标不一样,生产环境主要是让文件压缩得更小,更优化资源,改善加载时间. 而开发环境,主要是要开发更方便,更节省时间,比如调试比如自动刷新. 所以可以分开配置不同的开发环境,然后 ...
- 13. Roman to Integer ★
题目内容: Given a roman numeral, convert it to an integer. Input is guaranteed to be within the range fr ...
- Map集合练习题
(Map)已知某学校的教学课程内容安排如下: 完成下列要求:1) 使用一个Map,以老师的名字作为键,以老师教授的课程名作为值,表示上述课程安排.2) 增加了一位新老师Allen 教JDBC3) Lu ...
- java 的序列化与反序列化
前言: 一直很不理解java的序列化的概念,为什么java对象的序列化要实现 Serializable的接口?或者要实现Externalizable的接口?而且Externalizable 的父类还是 ...
- 视觉显著性简介 Saliency Detection
内容转移到博客文章系列:显著性检测 1.简介 视觉显著性包括从下而上和从上往下两种机制.从下而上也可以认为是数据驱动,即图像本身对人的吸引,从上而下则是在人意识控制下对图像进行注意.科研主要做的是从下 ...
- Ubuntu每次启动都显示System program problem detected
执行命令:sudo gedit /etc/default/apport 将enabled=1改为enabled=0保存退出