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制作图片水平垂直居中 亲测推荐
空白标签实现图片的垂直居中 这种方法很有意思,也很有独特之处,我的思路也是来自于张鑫旭-鑫空间-鑫生活写的<大小不固定的图片.多行文字的水平垂直居中>一文中的使用空白图片实现垂直对齐.他主 ...
随机推荐
- JAVA中时间格式(SimpleDateFormat)和数字格式(DecimalFormat)转换详解(转)
时间格式转换SimpleDateFormat: //定义日期的格式 SimpleDateFormat format =new SimpleDateFormat("yyMMdd"); ...
- c++常量指针和指针常量的区别
int a:int * const p = &a: //指针常量,*p可以修改*p = 8:(OK) p不可以修改 p++(ERROR) int a,b:const int *p = & ...
- 蓝图Blueprint
---恢复内容开始--- 蓝图: flask模块化处理操作和URL的方式 作用: 将不同的功能模块化,实现模块化应用 构建大型应用 优化项目结构 使用步骤 创建蓝图对象 对蓝图对象进行操作(注册路由; ...
- 结对编程ending-我和洧洧的碎碎念
应该是第一次和队友分工合作去完成一个项目,其中也经历了跳进不少坑又被拉回来的过程,总体来说这对于我俩也的确是值得纪念的一次经历. 我的碎碎念时间…… 对比个人项目和结对编程项目二者需求,前者重在面对不 ...
- JS案例六_2:省市级联动
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 辗转相除法(GCD)求左旋转字符串
本文写于2017-01-18,从老账号迁移到本账号,原文地址:https://www.cnblogs.com/huangweiyang/p/6297874.html 今天在牛客网上做了一道题,题意就是 ...
- 关于L1和L2的直观解释
https://blog.csdn.net/jinping_shi/article/details/52433975
- 列举至少3种Support包中提供的布局或工具
android.support.v7.widget.CardView 继承自FrameLayout并实现了圆角和阴影效果,常用于ListView或RecyclerView中Item布局的根节点 示例代 ...
- python 全栈开发笔记 1
将自己的姓名用进制表示出来 #自己姓名的进制表示 name=input('请输入你的名字:') for i in name: print(i) # python 3 中是按字符进行循环的 bytes_ ...
- 简单的bootstarp项目实例
===========index.html==============<!DOCTYPE html> <html> <head> <meta charset= ...