2016.7.23 vertical-align的运用

  vertical  垂直

  align     对齐

  vertical-align  垂直对齐(方式)

  vertical-align只能在block-inline和inline下能使用,在block下是不能使用的。

  vertical-align只作用于行内元素

  vertical-align有top、text-top、middle、baseline、bottom、text-bottom、sub、super、inherit、数值、百分比等属性。

  光看是看不懂的,我写了一串代码,我们来研究下(inherit是继承父级,在这里不演示,数值和百分比在最后演示,不写在这串代码里)

  一、vertical-align:top、text-top、middle、baseline、bottom、text-bottom、sub、super。sub和sup。

  css代码:

       img{
                width: 101px;
                height: 75px;
            }
            span{
                width: 201px;
                /* width:101px; */
                /* 当宽度为101px时,字体就会两行,vertical:text-top;和vertical:text-bottom;对齐的是第二行的字 准确的说是对齐最后一行的字*/
                height: 55px;
                background: yellow;
                display:inline-block;
            }
            .top {
                vertical-align: top;
            }
            .text-top {
                vertical-align: text-top;
            }
            .middle {
                vertical-align: middle;
            }
            .baseline {
                vertical-align: baseline;
            }
            .text-bottom {
                vertical-align: text-bottom;
            }
            .bottom {
                vertical-align: bottom;
            }
            .sub{
                vertical-align:sub;
            }
            .super{
                vertical-align:super;
            }
            .normal{
                display:inline;
                background:#fff;
            }

 

  body代码:

       这个是<img src="1.png" class="top"><span>top 顶部</span><br><br>
            这个是<img src="1.png" class="text-top"><span>text-top 文本上标</span><br><br>
            这个是<img src="1.png" class="middle"><span>middle 中部</span><br><br>
            这个是<img src="1.png" class="baseline"><span>baseline 基线</span><br><br>
            这个是<img src="1.png" class="text-bottom"><span>text-bottom 文本下标</span><br><br>
            这个是<img src="1.png" class="bottom"><span>bottom 底部</span><br><br>
            这个是<img src="1.png" class="sub"><span>sub </span><br><br>
            这个是<img src="1.png" class="super"><span>super </span><br><br>

             sub:<span class="sub normal">x</span>2     &nbsp;&nbsp;
             super:<span class="super normal">x</span>3 &nbsp;&nbsp;
             H<sub>2</sub>O                      &nbsp;&nbsp;
             y<sup>2</sup>                       &nbsp;&nbsp;

 

  运行后的效果:

                            

  是不是感觉看蒙了呢?慢慢看下去,我逐步剖析下,估计你们就懂了。

 

1、请观看放大后的两张图片,可知text-top、text-bottom、top、bottom四个属性

由上两张图片可知,text-top和text-bottom是对应文字的顶部和底部,top和bottom是对应同级元素(span)的在顶部底部。

 

2、请观看下面一张图片,可知baseline的作用

由上此图可知,baseline是对应文字的基线。基线一般是英文字母的底部。(小时候写英文字母,四行线,基线就是第三行)

 

3、请观看下面一张图片,可知middle的作用

 

由上可知,w3c说的中线对齐我没理解,这里我也不知道怎么解释,照搬w3c的解释吧。“把此元素放置在父元素的中部”,博客园里皆大神,如果知道这个vertical-align:middle;的具体用法时,一定千万要告诉我哟,我会感激不尽的。

4、请观看下面一张图片,可知vertical-align:sub和super的作用,也可知道sub标签和sup标签的作用

          

由上可知,sub和super的作用了。

 

二、vertical-align:数值、百分比;

  css代码:

  

       img{
                width: 101px;
                height: 75px;
            }
            span{
                width: 201px;
                /* width:101px; */
                /* 当宽度为101px时,字体就会两行,vertical:text-top;和vertical:text-bottom;对齐的是第二行的字 准确的说是对齐最后一行的字*/
                height: 55px;
                background: yellow;
                display:inline-block;
            }
            .v55px{
                vertical-align:55px;
            }
            .v50{
                vertical-align:50%;
            }

  body代码:

     这个是<img src="1.png"><span>正常的</span><br><br>
        这个是<img src="1.png" class="v55px"><span>55px</span><br><br>
        这个是<img src="1.png" class="v50"><span>50%</span><br><br>

 

  运行后效果:

         

  老规矩,开始解释:

  1、请观看以下一张图,这是正常状态下的样子,没设置任何的vertical

            

  2、请观看以下一张图,这是设置了vertial:55px的

        

  由此图得知,vertical-align:55px;很像margin-top:55px;但在这里margin-top:55px;很难实现类似这样的效果(不信你试试,不出现众多bug你跟我姓)。这个功能很实用,先记录,以后翻出来。

 

  3、请观看以下一张图,这是设置了vertical-align:50%;

          

   

  由此观之,谷歌默认行高是18px,字体16px。行高的百分之五十就是9px。

 

  vertical-align,我暂时介绍完了。

  vertical-align的功能很多,我也不知道有多少,我知道一个,就是css初始化的时候,用vertical:middle可以清除掉img下面的3px空白缝隙。

  各种大神如果有更好的建议,可以跟我一起探讨探讨。

 

转载于:https://www.cnblogs.com/huoan/p/5699121.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
电子图书资源服务系统是一款基于 Java Swing 的 C-S 应用,旨在提供电子图书资源一站式服务,可从系统提供的图书资源中直接检索资源并进行下载。.zip优质项目,资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松copy复刻,拿到资料包后可轻松复现出一样的项目。 本人系统开发经验充足,有任何使用问题欢迎随时与我联系,我会及时为你解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(若有),项目具体内容可查看下方的资源详情。 【附带帮助】: 若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步。 【本人专注计算机领域】: 有任何使用问题欢迎随时与我联系,我会及时解答,第一时间为你提供帮助,CSDN博客端可私信,为你解惑,欢迎交流。 【适合场景】: 相关项目设计中,皆可应用在项目开发、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面中 可借鉴此优质项目实现复刻,也可以基于此项目进行扩展来开发出更多功能 【无积分此资源可联系获取】 # 注意 1. 本资源仅用于开源学习和技术交流。不可商用等,一切后果由使用者承担。 2. 部分字体以及插图等来自网络,若是侵权请联系删除。积分/付费仅作为资源整理辛苦费用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值