css行内块元素垂直居中

div里边有个img标签,要想让img垂直居中,需要

  1. 给父盒子设置line-height=height
  2. img设置vertical-align:middle
<div style="background-color: red; height: 150px;line-height: 150px;"><img src="data:images/close.png" style="vertical-align: middle;" alt="">
</div>

原理

基本知识点
行内块元素一般是和文字在一行内显示(这类型标签产生的初衷),行内块元素默认是和同一行的文字基线对齐的。
这个可以给行内块元素加几个文字来看验证

<div style="background-color: red; height: 150px;line-height: 150px;"><button style="background-color: #fff;height:50px;width:50px;vertical-align: middle;"></button>wenzi</div>


那此时有同学会问,如果行内元素一行内没有文字呢,这时候怎么对齐?
答案是:即使行内元素同一行没有文字,浏览器也会给一个隐形的文字,这个是理解的难点

所以父元素添加line-height,调整中线位置,然后子元素再设置和中线对齐,就可以实现行内块元素垂直居中。

css行内块元素垂直居中相关推荐

  1. 六、pink老师学习笔记——CSS三角形之美 margin负值之美文字围绕浮动元素行内块元素布局的巧妙运用

    7. 拓展@ 7.1 margin负值之美 1). 负边距+定位:水平垂直居中 咱们前面讲过, 一个绝对定位的盒子, 利用 父级盒子的 50%, 然后 往左(上) 走 自己宽度的一半 ,可以实现盒子水 ...

  2. css标签显示特性(块级元素、行内元素、行内块元素、标签显示模式转换display、简单文字居中、简单导航栏案例)

    HTML标签一般分为块标签和行内标签两种类型,它们也称块元素和行内元素. 标签以什么方式进行显示,比如div 自己占一行, 比如span 一行可以放很多个 1. 块级元素(block-level) 常 ...

  3. 浮动元素具有行内块元素特点(HTML、CSS)

    浮动元素具有行内块元素特点(HTML.CSS) <!DOCTYPE html> <html lang="en"><head><meta c ...

  4. 行内块元素(HTML、CSS)

    行内块元素(HTML.CSS) 行内块元素实际就是把块元素以行的形式展现,保留了块元素可以设置的对应CSS属性. <!DOCTYPE html> <html lang="e ...

  5. css怎么将块元素变成,CSS块元素、行内元素、行内块元素的转换

    一.块元素转行内元素:display:inline 二.行内元素转块元素:display:block div{ display: inline; /*无效 width: 500px; height: ...

  6. CSS中块级元素,行内块元素,行内元素的特点

    CSS自学笔记 目录 一.什么是元素显示模式 二.CSS的元素显示模式 1.块元素 2.行内元素 3.行内块元素 前言 网页的标签非常多,在不同地方会用到不同类型的标签,了解他们的特点可以更好的布局我 ...

  7. 【CSS】图片底部空白缝隙处理 ( 使用居中对齐 / 顶部对齐 / 底部对齐 | 将行内元素 / 行内块元素转为块级元素 )

    文章目录 一.图片底部空白缝隙问题 二.图片底部空白缝隙问题解决方案一 ( 使用居中对齐 / 顶部对齐 / 底部对齐 ) 三.图片底部空白缝隙问题解决方案二 ( 将行内元素 / 行内块元素转为块级元素 ...

  8. Web前端,CSS中关于块级元素、行内元素、行内块元素、元素显示模式转换、CSS特性继承性和层叠性、普通导航和五彩导航的制作

    前言 持续总结输出中,今天分享的是Web前端,CSS中关于块级元素.行内元素.行内块元素.元素显示模式转换.CSS特性继承性和层叠性 1.块级元素 特点: 独占一行(一行只能显示一个) 宽度默认是父元 ...

  9. css中标签显示模式、块元素、行内元素、行内块元素、显示模式转换

    标签显示模式display: HTML标签一般分为块标签(块元素:block-level)和行内标签(行内元素:inline-level)两种类型,但是还有第三种说法行内块元素:table-row-g ...

最新文章

  1. Java项目实例教程详细
  2. Oracle学习:子查询 (sql 嵌套 sql)
  3. Cache超清晰逻辑详解(cache的三种映射)
  4. busybox tftp
  5. html上下滚动切换顶端tab,jQuery实现Tab菜单滚动切换的方法
  6. 【ElasticSearch】Es 源码之 Transport 和 TransportService 源码解读
  7. SAP License:值得一看的ERP问题
  8. java session使用_Nginx+tomcat实现session共享
  9. 基于神经网络的文本特征提取——从词汇特征表示到文本向量
  10. 《哈佛大学幸福课》笔记
  11. 利用python进行A/B测试
  12. apkmirror_how to download your app from apkmirror to get the lastest app version
  13. python工资自动发放_python自动化办公--协助财务自动发送工资条
  14. html5适应手机比例,HTML5 如何让手机网站自适应设备屏幕宽度
  15. java redis 流水线_Redis附加功能之Redis流水线pipeline
  16. PCB设计中如何区分 滤波电容、去耦电容、旁路电容
  17. Geogebra的使用
  18. 使用python将excel表格通讯录导入手机通讯录
  19. MySQL数据库快速入门到精通(超详细保姆级,建议收藏)这可能是目前最适合你的教程,从基础语法到实例演示。
  20. 2019年9月技术栈情况汇总

热门文章

  1. 【推荐两款神器】不限速下载、追剧神器
  2. 戴尔微型计算机主机怎么拆,电脑主机您会拆吗?主机拆机详解 每一步都清清楚楚的告诉您...
  3. java后台生成微信二维码,打不开图片
  4. Dfinity官方工程师从技术底层解读ICP如何引领Web3
  5. java 读取文件文本内容_Java读取文本文件
  6. 洛咕 P3961 [TJOI2013]黄金矿工
  7. VUE获取当前点击元素
  8. 微信小商店如何自动手动批量打印订单小票、商品标签、发货单、销售单、配货单、电子面单?
  9. JAVA高级研发技术栈
  10. 使用Autoware标定工具包进行相机和激光雷达的联合标定