怎么应用vertical-align,才能生效?
vertical-align 的使用
,所以得用vertical-align:middle。然而用的时候总是无效,查了资料和实践后,终于知道vertical-align的用法了!
一、当父元素设置了line-height
- 父元素(inline-block\block)必须含有line-height(inline元素有无皆可),子元素中的(inline-block/inline元素)vertical-align才能起作用。
- vertical-align不可继承,必须对子元素单独设置。
关于定义——
| 值 | 描述 | 
| 长度 | 通过距离升高(正值)或降低(负值)元素。'0cm'等同于'baseline' | 
| 百分值 – % | 通过距离(相对于1line-height1值的百分大小)升高(正值)或降低(负值)元素。'0%'等同于'baseline' | 
| baseline | 默认。元素的基线与父元素的基线对齐。 | 
| sub | 降低元素的基线到父元素合适的下标位置。 | 
| super | 升高元素的基线到父元素合适的上标位置。 | 
| top | 把对齐的子元素的顶端与line box顶端对齐。 | 
| text-top | 把元素的顶端与父元素内容区域的顶端对齐。 | 
| middle | 元素的中垂点与 父元素的基线加1/2父元素中字母x的高度 对齐。 | 
| bottom | 把对齐的子元素的底端与line box底端对齐。 | 
| text-bottom | 把元素的底端与父元素内容区域的底端对齐。 | 
| inherit | 采用父元素相关属性的相同的指定值。 | 
关于作用环境——
- 所谓inline-block水平的元素,即可以与inline水平元素混排,又能设置高宽属性的元素,例如图片,按钮,单复选框,单行/多行文本框等HTML控件,只有这些元素默认情况下会对vertical-align属性起作用。
- 对inline元素设置vertical-align是有作用的,只是要重新设置line-height的值,否则继承了父元素的line-height只能垂直居中。
<span class="box"> <span class="dot"></span> 我是一段卡哇伊的文字。 </span>
.box{background:black; color:white; padding-left:20px;}
.dot{display:inline-block; width:4px; height:4px; background:white;vertical-align:top;}


<div class="outerbox">
<img src="C:\Users\Administrator\Desktop\test.jpg"/>
<span>这是外层元素的内部文字</span>
</div>
.outerbox{width:300px; line-height: 300px;font-size: 16px; }
.outerbox img{width: 30px; height:30px; vertical-align: bottom;}
.outerbox span{vertical-align: top;}




二、当父元素没有设置line-height时,inline/inline-block子元素之间对齐。
- 当父元素没有设置line-height时,只对行内元素的兄弟元素对齐有用,无法子元素居中对齐父元素。
- 设置了vertical-align:middle的子元素的中线与兄弟元素的基线对齐。若兄弟元素都设置该项,则居中对齐。
<div style="height:200px">
<img src="C:\Users\Administrator\Desktop\桌面\gallery4.jpg" style="width:50px;vertical-align:middle;">
<span style="vertical-align:middle">hahahahhah</span>
</div>






怎么应用vertical-align,才能生效?的更多相关文章
- 创建MySQL用户 赋予某指定库表的权限   flush privileges才能生效!!!!;@'localhost'授权本地,@'%'授权远程
		update ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value 建议使用GRANT语句进行授权,语句如下: gra ... 
- What is Vertical Align?
		https://css-tricks.com/what-is-vertical-align/ ************************************************* CSS ... 
- Idea使用记录--每次修改JS文件都需要重启Idea才能生效解决方法
		最近开始使用Idea,有些地方的确比eclipse方便.但是我发现工程每次修改JS或者是JSP页面后,并没有生效,每次修改都需要重启一次Tomcat这样的确不方便.我想Idea肯定有设置的方法,不可能 ... 
- JSP的改动需要重启应用服务器才能生效?
		PLM的版本由2013版升级到2016版,部署到应用服务器tomEE的war包也更新了,今天在Linux服务器上hot fix一个JSP页面的时候发现改动没有生效,要重启tomEE才生效,纳闷了一下才 ... 
- idea中war和war exploded的区别及修改jsp必须重新启动tomcat才能生效的问题
		刚开始使用idea,发现工程每次修改JS或者是JSP页面后,并没有生效,每次修改都需要重启一次Tomcat这样的确不方便.我想Idea肯定有设置的方法,不可能有这么不方便的功能存在. 需要在Tomca ... 
- Idea-每次修改JS文件都需要重启Idea才能生效解决方法
		最近开始使用Idea,有些地方的确比eclipse方便.但是我发现工程每次修改JS或者是JSP页面后,并没有生效,每次修改都需要重启一次Tomcat这样的确不方便.我想Idea肯定有设置的方法,不可能 ... 
- 修改JS文件都需要重启Idea才能生效解决方法
		最近开始使用Idea,有些地方的确比eclipse方便.但是我发现工程每次修改JS或者是JSP页面后,并没有生效,每次修改都需要重启一次Tomcat这样的确不方便.我想Idea肯定有设置的方法,不可能 ... 
- 更改windows服务的配置文件(app.config)必须重启服务才能生效吗?
		这个问题是前一阶段写windows服务碰到的.本来在写获取配置文件的某个配置的值的时候,通常我都是写类似下面的这么一个静态方法来获取: 1: /// <summary> 2: /// 获取 ... 
- 父容器的flowover:hidden 必须配合父容器的宽高height width才能生效
		有时候 给父容器 加上了 flowover:hidden 这个css后, 其中的子元素为什么仍然会跑出来? 解决的根本方法就是要给 父容器 加上具体的一个宽度, 或高度. (而这个宽度和高度, 其实你 ... 
随机推荐
- PAT (Advanced Level) 1081. Rational Sum (20)
			简单模拟题. #include<cstdio> #include<cstring> #include<cmath> #include<vector> # ... 
- USACO刷题之路
			重拾经典 本科生涯结束了,在大学做的ACM竞赛现在基本忘的差不多了.USACO作为一个经典的题库,本来是面向OI选手的,但是由于题目质量很高所以受到大家的好评,所以我这次就从它开始我的刷题之路吧. 由 ... 
- [poj解题]1017
			Packets Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 41014 Accepted: 13776 Descrip ... 
- Bootstrap-dialog的使用(续Bootstrap Table)
			Bootstrap-dialog实现表格内容的增,删,改. 插件引入:必须先引入jquery和bootstrap和artTemplate. <link rel="stylesheet& ... 
- iframe与父页面的js通信
			1.父页面调用iframe中的函数: document.getElementById('myframe').contentWidow.fun1(); 2.在iframe中调用父页面中的函数: wind ... 
- [转]hibernate三种状态详解
			本文来自 http://blog.sina.com.cn/u/2924525911 hibernate 三种状态详解 (2013-04-15 21:24:23) 转载▼ 分类: hibernate ... 
- 关于NOMINMAX这个预处理宏
			标准库在<algorithm>头中定义了两个模板函数std::min() 和 std::max().通常用它可以计算某个值对的最小值和最大值.可惜在 Visual C++ 无法使用它们,因 ... 
- Linux常用的配置文件整理
			/etc/fstab ( 分区挂载配置文件) /etc/sysconfig/network (主机名称配置文件) /etc/sysconfig/network-scripts/ifcfg-e ... 
- (简单) HUST 1017 Exact cover , DLX+精确覆盖。
			Description There is an N*M matrix with only 0s and 1s, (1 <= N,M <= 1000). An exact cover is ... 
- eclipse创建Maven父子结构Maven项目
			1.创建聚合模块 选择菜单项 File—>New—>Other,在弹出的对话框中选择Maven下的Maven Project,然后单击Next按钮,在弹出的New Maven Projec ... 
