宽度与高度

作者: Grit0821 | 来源:发表于2019-03-14 11:12 被阅读0次

1. 文字两端对齐套路,实现两行文字首尾对齐text-align: justify;

代码链接

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>文字两端对齐套路</title>
  <style>
  div{
    border: 1px solid red;
    font-size: 20px;
  }
    span{
      border: 1px solid green;
      display: inline-block;
      width: 5em;
      text-align: justify;
      line-height: 20px;
      overflow: hidden;
      height: 20px;
    }
    span::after{
      content: '';
      display: inline-block;
      width: 100%;
      border: 1px solid blue;
    }
  </style>
</head>
<body>
<div>
  <span>姓名</span> <br>
  <span>联系方式</span>
</div>
</body>
</html>

套路:

  • <span>包裹需要对齐的文字,方便操作。
  • 利用伪元素span::after(inline-block)在后面添加一个空的内容,并把width设为100%,将内容撑大,然后hidden它

text-align:规定行内内容如何相对它的块父元素对齐。而且它并不控制块元素自己的对齐,只控制它的行内内容的对齐。要控制文本两端对齐直接写text-align:justify就可以 了,但是对于多行文本,text-align不会对文本的最后一行起作用,最后一行依旧左对齐.因此对于单行文本的段落不会实现效果,单行文本既是第一行,也是最后一行。

参考文章:
text-align: justify 的使用方法

2.将ul中的li 横向排列float布局(制作导航栏的常用方法)

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JS Bin</title>
</head>
  <style>
    ul{
      margin:0;padding:0;list-style: none;
      border: 1px solid green;
    }
    ul>li{
      float:left;
      border: 1px solid red;
    }
    .clearfix::after{
      content:'';
      display: block;
      clear: both;
    }
  </style>
<body>
  <ul class='clearfix'>
    <li>选项1</li>
    <li>选项2</li>
    <li>选项3</li>
    <li>选项4</li>
    <li>选项5</li>
    <li>选项6</li>
  </ul>
</body>
</html>
实现结果
  • 去除浮动,添加clearfix类的代码记住
.clearfix::after{
      content:'';
      display: block;
      clear: both;
  • float布局套路:
    1.浮动元素加float:left;
    2.浮动元素的父级元素加class = "clearfix"来去除浮动。

3. 文字溢出省略

  1. 单行文本溢出省略
    http://js.jirengu.com/gayuw/2/edit
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>单行省略文本</title>
</head>
  <style>
    div{
      border: 1px solid red;
      /*******实现代码******/
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      /******************/
    }
  </style>
<body>
  <div>  
    1212223546516515131321154648489789448946164898989898989
  </div>
</body>
</html>
  1. 多行文本溢出
    http://js.jirengu.com/bunir/1/edit

套路:搜索关键字 css multi line text ellipsis

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>多行省略</title>
</head>
  <style>
    div{
      border: 1px solid red;
      /********************/
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      overflow: hidden;
      /***********************/
    }
  </style>
<body>
  <div>
    4561235646546464654644989898989898989898
    5664656565656565656565656448484848484848
    4747474747777474774774744484848484848484
    1213132123123132223232131484848484848422
  </div>
</body>
</html>

4. 块级元素内的文字居中

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>文字居中</title>
</head>
  <style>
    div{
      border: 1px solid red;
      line-height: 24px;
      padding: 8px 0;
      text-align: center;
  </style>
<body>
  <div>  
    121222354651651513132115464848978944
    89461648989898989894848484848484848844
  </div>
</body>
</html>

套路:
http://js.jirengu.com/pucen/1/edit
1.垂直居中:一般情况不要指定div的height,(定死了多行文字容易溢出,div的高度由内部文档流的高度总合决定),应该指定文字的line-height,然后用padding撑出来高度。
2.水平居中:text-align: center;

5. margin合并

div里嵌套div,外层div的高度会不会被内层div的margin撑高,取决于外层div有没有padding或者border阻挡。

6.div内的div垂直和水平居中

div内嵌套一个div,外部div定高,内部div高度自适应。
使用flex布局实现
http://js.jirengu.com/zugoc/1/edit

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JS Bin</title>
</head>
  <style>
    .dad{
      border: 1px solid red;
      height: 300px;
      display: flex;
      justify-content:center;
      align-items:center;
    }
    .son{
      border: 1px solid green;
      width: 100px;
    }
  </style>
<body>
  <div class="dad">
    <div class="son">
      8484848484
      84ffdfdfdf
      dfdfgrrgr
    </div>
  </div>
</body>
</html>

相关文章

  • CSS设置背景图宽度100%,高度自适应

    padding-top= (高度/宽度)*100%;即图片的高度与宽度的比例,因此就能实现背景图宽度100%,高度...

  • 宽度与高度

    1.内联元素的宽高 给 inline 元素设置宽高是没有任何效果的 给inline元素设置margin,paddi...

  • 高度与宽度

    指定宽高 最简单的给组件设定尺寸的方式就是在样式中指定固定的width和height。React Native中的...

  • 宽度与高度

    1.div高度 知识点1:如果div里面只有一个内联元素,div的高度就是这一行内联元素的行高。如果有多行,就把每...

  • 宽度与高度

    1. 文字两端对齐套路,实现两行文字首尾对齐text-align: justify; 代码链接 套路: 包裹需要对...

  • CSS3 多媒体查询

    viewport(视窗) 的宽度与高度 设备的宽度与高度 朝向 (智能手机横屏,竖屏) 。 分辨率 body { ...

  • View的测量模板

    高度模板与宽度模板一致

  • CSS 高度与宽度

    文字的对齐 word-break: break-all 发现文字超出了div的宽度,因为浏览器不会自动打断,可以添...

  • css 宽度与高度

    文档流(normal flow)div竖着排,内联元素横着排 块级元素div的宽高:未设置宽高时 宽:div的宽度...

  • CSS 宽度与高度

    前言:如果你写的 CSS 中经常出现 width 与 height,说明你写的 CSS 是有问题的 一、文档流(N...

网友评论

    本文标题:宽度与高度

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