美文网首页饥人谷技术博客
CSS基础篇 - 如何将文字对齐

CSS基础篇 - 如何将文字对齐

作者: 7YearsOld | 来源:发表于2017-10-30 16:30 被阅读0次

    某天,你想新建一个表单,这时你发现了一个问题:

    image.png
    咦,什么鬼,这个东西怎么和我预期的不太一样,本想 姓名 联系方式 年龄 家庭住址 都是两端对齐;这可怎么办,想了一下,诶,我在中间加入空格 不就解决了,完美,开始尝试; image.png

    很好!很完美!就这样搞定,某一天,你突然发现一个bug,怎么将font-family换一种字体后,怎么就失效了;现在你的情况是这样的:

    image.png
    what? 这可怎么办;难道还能根据字体的样式进行变化不成;
    恩,你想的没错,字体在创建的时候,开发者就已经规定好相关的参数了,看来得换一种方法解决这个问题;
    这时候你想到text-align="justify"这个属性,当元素多行时,会对文字进行内容适应;但是我们这就只有一行文字,那我们就使用伪元素创建一个;
    span::after{
    content: '',
    display:inline-block,
    width:100%;
    

    让'姓名' 和宽度100%的空元素进行适应显示;看下效果:

    image.png
    font-family: monospace 情况下,同样完美的适应了两边对齐;
    下面我们进行进一步的优化;将元素添加边框,使用border大法!
    去除伪元素占据的空间: image.png

    献上完整代码:

      <style>
        div {
          border: 1px solid blue;
          font-size: 20px;
        }
    
        span {
          border: 1px solid red;
          display: inline-block;
          text-align: justify;
          width: 5em;
          height: 20px;
          line-height: 20px;
          overflow: hidden;
        }
    
        span::after {
          content: '';
          display: inline-block;
          width: 100%;
        }
      </style>
    </head>
    
    <body>
      <div>
        <span>姓名</span>
        <br>
        <span>联系方式</span>
        <br>
        <span>年龄</span>
        <br>
        <span>家庭住址</span>
      </div>
    
      <!--         -->
    </body>
    

    大家可以自己测试使用;本篇完结!

    相关文章

      网友评论

        本文标题:CSS基础篇 - 如何将文字对齐

        本文链接:https://www.haomeiwen.com/subject/tuwppxtx.html