zoukankan      html  css  js  c++  java
  • 有趣的居中方式

    古老的center标签已经废弃了,css的text-align取代了它。

    一、text-align 可以使行内元素居中,也可以使块级元素中的文本居中

    如下代码

    <div style="400px;border:1px solid gray;padding:5px;text-align:center;">
        <span style="background:yellow;">使用text-align使行内元素span居中</span>
    </div>
    <br>
    <div style="400px;border:1px solid gray;padding:5px;text-align:center;">
        <p style="background:red;">使用text-align使行内元素span居中</p>
    </div>
    

      

      

    效果如图

    可见:第一个text-align使得文本和SPAN都居中,第二个text-align则只能使文本居中,块级元素P则没有居中。关于text-align的演变及浏览器兼容性参考 RT8003

    二、margin 自动空白边仅能使块级元素居中

    如下代码

    <div style="400px;border:1px solid gray;padding:5px;">
        <span style="background:yellow;220px;margin:0 auto">使用margin:auto不能使行内元素居中</span>
    </div>
    <br>
    <div style="400px;border:1px solid gray;padding:5px;">
        <p style="background:red;220px;margin:0 auto">使用margin:auto使块级元素居中</p>
    </div>
    

      

    效果如图

    可见:自动空白边并不能使行内元素SPAN(inline-block也不能)居中,但可以使得块级元素P居中。

    三、绝对定位居中(position, left, right)

    代码如下

    <div style="400px;height:50px;border:1px solid gray;position:relative;">
        <span style="background:yellow;position:absolute;left:60px;right:60px;">使用绝对定位居中行内元素</span>
    </div>
    <br>
    <div style="400px;height:50px;border:1px solid gray;position:relative;">
        <p style="background:red;position:absolute;left:50px;right:50px;">使用绝对定位方式居中块级元素</p>
    </div>
    

      

    效果如图

    父元素使用relative,子元素SPAN和P绝对定位后无需设置width,它会根据left,right值自动计算元素的宽度。这种居中方式很有意思,也很实用。可惜IE6不能正确解析,它忽略了right的值。因此在IE6退出历史舞台前还得放弃这种居中方式。

  • 相关阅读:
    【scala】定义变量和函数
    【python】self用法详解
    【Hive】自定义函数
    【Java】抽象类和接口
    Linux中的wheel用户组是什么?
    CentOS6.9切换root用户su root输入正确密码后一直提示Incorrect password,如何解决?
    CentOS7.X中使用yum安装nginx的方法
    Win10提示“因为文件共享不安全,所以你不能连接到文件共享”如何处理
    vim编辑器-多行加注释与去注释
    CentOS7.4用yum安装并配置MySQL5.7
  • 原文地址:https://www.cnblogs.com/snandy/p/3331013.html
Copyright © 2011-2022 走看看