浮动与定位02

2018-03-30  本文已影响0人  倾国倾城的小饼干

水平居中与垂直居中

水平居中

text-align:center

<div class='box'>
   hello你好
</div>
.box{
    text-align: center;
}
<div class='box'>
  hello
  <a class='bt'>点我</a>
</div>
.box{
  border: 1px solid red;
 text-align: center;
}
.bt{
  padding: 3px;
  color:#fff;
}

padding:3px的话按钮会超出border,因为上下padding的背景会占用,但内容不变,如果想要按钮在边框里面,只需设置inline-block。

<div class='box'>
  <a class='bt'>点我</a>
  <a class='bt'>点我</a>
</div>
.box{
  text-align: center;
}
.bt{
  display: inlie-block;
}

块级元素居中

因为块级元素本身就是占满一行的所以,无所谓居中不居中,一般说的块级元素居中指的是有固定宽度的元素。只需margin:0 auto+固定宽度

垂直居中

第一种思路

第二种思路

  1. 外部的div如果是固定的宽度,则直接写line-height=高度
  2. 如果高度不是固定的则直接写上下padding相等。
  1. 固定宽高元素绝对定位
  2. 不固定宽高
    固定宽高绝对定位
    .element{
    width: 600px;
    height: 400px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-top: -200px;
    margin-left: -300px;
    border: 1px solid;
    }
    不固定宽高
    css3中的transform
    .box{
    position: absolute;
    border: 1px solid black;
    width: 300px;
    padding: 10px;
    left: 50%;
    top: 20%;
    box-sizing: border-box;
    transform: translate(-50%,-20%)
    }
    margin:auto实现绝对定位元素的居中
.element{
  width: 600px;
  height: 400px;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
上一篇 下一篇

猜你喜欢

热点阅读