前端基础问题:CSS vertical-align 属性
CSS vertical-align 属性与基线的那些事~
定义和用法:
vertical-align 属性设置元素的垂直对齐方式。
vertical-align只对内联元素(inline、inline-block、inline-table)、表格单元格元素(table-cell)生效。
说明:
该属性定义行内元素的基线相对于该元素所在行的基线的垂直对齐。
允许指定负长度值和百分比值。这会使元素降低而不是升高。在表单元格中,这个属性会设置单元格框中的单元格内容的对齐方式。
| 默认值: | baseline |
|---|---|
| 继承性: | no |
| 版本: | CSS1 |
| JavaScript 语法: | object.style.verticalAlign="bottom" |
可能的值:
| 值 | 描述 |
|---|---|
| baseline | 默认。元素放置在父元素的基线上。 |
| sub | 垂直对齐文本的下标。 |
| super | 垂直对齐文本的上标 |
| top | 把元素的顶端与行中最高元素的顶端对齐 |
| text-top | 把元素的顶端与父元素字体的顶端对齐 |
| middle | 把此元素放置在父元素的中部。 |
| bottom | 把元素的顶端与行中最低的元素的顶端对齐。 |
| text-bottom | 把元素的底端与父元素字体的底端对齐。 |
| length | |
| % | 使用 "line-height" 属性的百分比值来排列此元素。允许使用负值。 |
| inherit | 规定应该从父元素继承 vertical-align 属性的值。 |
使用:
在使用vertical-align 属性时要了解清楚基线这个概念。
基线:
基线的位置并不是固定的。
在文本之类内联元素中,基线是‘ 默认值:baseline ’的下边缘位置

<div>
<span>默认值:baseline</span>
</div>
细心的朋友应该会发现,文本内容与盒子上下边之间存在着空隙。这是因为内联元素存在默认行高,而空隙正是被这默认行高撑开的。
img等元素基线也是下边缘。

<div>
默认值:baseline
<img src="data:images/0.gif" alt="">
<img src="data:images/0.gif" alt="">
</div>
img元素下边的空隙是要和父元素的基线看齐造成的,而与第二张img之间的空隙是:它们之间存在回车、换行或者空格(解决办法1、解决办法2)
在
inline-block元素中,如果该元素内没有内联元素或者overflow不是visible,其基线就是margin的边缘。

<div>
123<span style="line-height: 50px;">默认值:baseline</span>
<img src="data:images/0.gif" alt="">
<span style="display: inline-block; overflow: hidden;height: 80px;">xxx</span>
</div>
小结:每个行内元素的基线都要向父元素字体基线看齐。当父元素或子元素的行高和字体大小样式改变的时候,会使得父元素基线位置改变,从而使得行内元素的位置整体上下移动。
父元素默认line-height和font-size的存在,也有可能会悄悄地影响布局。
前端小白,有哪些不足的地方,还请大家多多指教!
————————————————
资料参考:
CSDN作者:「651423」
原文链接:https://blog.csdn.net/u013007731/article/details/79242619
CSDN作者:「℡鞋子~特大号」
原文链接:https://blog.csdn.net/weixin_43599212/article/details/107584461
简书作者:「Iam_Bling」
原文链接:https://www.jianshu.com/p/ce7e4a997a2c
博客园作者:「lylszo」
原文链接:https://www.cnblogs.com/lylszo/p/12622391.html
前端基础问题:CSS vertical-align 属性的更多相关文章
- 前端基础:CSS样式选择器
前端基础:CSS样式选择器 CSS概述 CSS是Cascading Style Sheets的简称,中文意思是:层叠样式表,对html标签的渲染和布局.CSS规则由两个主要的部分组成:1.选择器:2. ...
- 前端第二篇---前端基础之CSS
前端第二篇---前端基础之CSS 目录 一.css介绍 二.css语法 三.css的几种引入方式 四.css选择器 五.css属性相关 六.盒子模型 拓展 一.css介绍 CSS(Cascading ...
- 02 前端基础之CSS
目录 前端基础之CSS css简介 基本选择器(重要) 组合选择器(重点) 属性选择器 分组与嵌套 伪类选择器 伪元素选择器 选择器的优先级 字体相关 背景属性 边框属性 display属性 盒子模型 ...
- 前端基础之CSS的引入+HTML标签选择器+CSS操作属性
clear:left/ringt属性 CSS:语法形式上由选择器+以及一条或多条声明组成:选择器查找到指定的html标签后,使用css属性设置html标签的样式: ...
- Web前端基础(4):CSS(一)
1. CSS介绍 现在的互联网前端分三层: HTML:超文本标记语言.从语义的角度描述页面结构. CSS:层叠样式表.从审美的角度负责页面样式. JS:JavaScript .从交互的角度描述页面行为 ...
- 2020年12月-第01阶段-前端基础-HTML CSS 项目阶段(三)
品优购项目(三) 1. 首页制作 1). 楼层区 floor 注意这个floor 一个大盒子 包含, 不要给高度,内容有多少,算多少 2). 家用电器模块 这个模块 简单 不需要写样式 版心居中对齐 ...
- 前端知识点回顾之重点篇——CSS中vertical align属性
来源:https://www.cnblogs.com/shuiyi/p/5597187.html 行框的概念 红色(line-height)为行框的顶部和底部,绿色(font-size)为字体的高度, ...
- 前端基础之CSS属性
一.背景属性 <style> p { /*背景颜色*/ background-color: red; /*字体颜色*/ color: blue; /*宽度和高度*/ width: 600p ...
- 前端基础:CSS属性操作
CSS属性操作 1.文本 文本颜色:color,颜色属性被用来设置文字的颜色,颜色是通过CSS经常指定的,其格式有: 1.十六进制:#FF0000: 2.RGB值:RGB(255,0,0): 3.颜色 ...
- 前端基础之--css中可被继承和不可被继承的属性
一.无继承性的属性 1.display:规定元素应该生成的框的类型 2.文本属性:vertical-align:垂直文本对齐 text-decoration:规定添加到文本的装饰 text-shado ...
随机推荐
- java 动态规划解决上楼梯问题
问题描述: 你正在爬楼梯. 它需要n步才能达到顶峰. 每次你可以爬1或2步. 您可以通过多少不同的方式登顶? 注意:给定n将是一个正整数. Example 1: Input: 2 Output: 2 ...
- python 画图中文显示问题
在python文件当前目录下添加simsun.ttc(资源网上下载即可,有很多) 代码如下: plt.title("标题", fontproperties='SimHei', si ...
- SQL注入与参数化查询
SQL注入的本质 SQL注入的实质就是通过SQL拼接字符串追加命令,导致SQL的语义发生了变化.为什么发生了改变呢? 因为没有重用以前的执行计划,而是对注入后的SQL语句重新编译,然后重新执行了语法解 ...
- windows 以管理员身份运行 代码
1 // 以管理员身份运行本进程 2 // 1 获取本进程的文件路径. 3 TCHAR path[MAX_PATH] = { 0 }; // 需要初始化 4 DWORD dwPathSize = MA ...
- Docker上安装Redis
Docker可以很方便的进行服务部署和管理,下面我们通过docker来搭建Redis的单机模式.Redis主从复制.Redis哨兵模式.Redis-Cluster模式 一.在Docker上安装单机版R ...
- Java进阶专题(二十六) 将近2万字的Dubbo原理解析,彻底搞懂dubbo
前言 前面我们研究了RPC的原理,市面上有很多基于RPC思想实现的框架,比如有Dubbo.今天就从Dubbo的SPI机制.服务注册与发现源码及网络通信过程去深入剖析下Dubbo. Dubbo架构 ...
- Java之常用API
API概述 什么是API API (Application Programming Interface) :应用程序编程接口 java中的API 指的就是 JDK 中提供的各种功能的 Java类,这些 ...
- 【Makefile】2-Makefile的介绍及原理
目录 前言 概念 Chapter 2:介绍 2.1 makefile的规则 2.3 make 是如何工作的 ** 2.5 让 make 自动推导 2.8 Makefile 里面有什么 2.9 Make ...
- Docker安装完成后启动报错:Failed to start Docker Application Container Engine
报错如下:显示没有启动 先关闭防火墙:防火墙关闭指令请看 <a href="Linux防火墙篇">https://www.cnblogs.com/szx666/p/1 ...
- C# net Emgu.CV.World 人脸识别 根据照片将人脸抠图出来。
Emgu.CV.World 人脸识别 根据照片将人脸抠图出来.效果如下: 应用范围:配合摄像头,抓取的图像,抠出人脸照片,这样人脸照片的大小会很小,传输速度快.这样识别速度也就快. 目前我正在做百度人 ...