美文网首页
一个元素如何居中

一个元素如何居中

作者: 洗阳光 | 来源:发表于2016-03-21 23:36 被阅读194次

任务目的

  • 实践HTML/CSS布局方式
  • 深入了解position等CSS属性

任务描述

  • 实现如下示例图的效果


  • 灰色元素水平垂直居中,有两个四分之一圆位于其左上角和右下角。

达成度

  • github源码
  • 查看 demo1,实现方式:主元素利用绝对定位以及负外边距,里面圆形元素采用相对定位。
  • 查看 demo2,实现方式:主元素利用绝对定位以及transform调整位置,里面圆形元素采用相对定位。
  • 查看 demo3,实现方式:需要由外界容器,容器里面设置成display:flex以及其他居中属性,里面圆形仍采用相对定位。

一个元素如何居中?查看原文请移步Centering in CSS: A Complete Guide

水平居中

  • block元素的margin: 0 auto实现原理:上下边距为0,左右边距设置为auto时,这个元素在水平方向上会撑满整个页面,而在block元素设置里宽度以后,撑满页面的就会变成其外边距,从而达到居中的效果。
  • inline元素的text-align:center实现原理:其css属性规定了inline元素可以会自动居中。同理,当存在多个inline元素时,会按从左到右的顺序排列再居中。

垂直居中

  • inline元素的等内边距padding-top==padding-bottom,上下两边的内边距相等,则中间内容居中* inline元素的行高line-height==height,行高与容器高度相等,则中间内容居中
  • inline元素的vertical:middle实现原理:css属性垂直居中文字,vertical有多个属性可选,默认是baseline属性
  • block元素利用绝对定位以及负外边距,适用于知道元素的宽度和高度,兼容性好,参照下图,注意这里的外边距减去的是block元素宽度的一般,即margin:-(width/2) px
  • block元素利用绝对定位以及transform,适用于不知道元素的宽度盒高度,参照下图


  • block元素在外部的容器,将其设置为下图,则子元素block元素垂直居中
.parent {
  display: flex;
  align-items: center;
}

水平垂直居中

  • 在垂直居中的基础上,block元素的三种方法均能演变为水平垂直居中,前两种只需增加left属性以及margin-left或者transformX当中的一个属性达到目的* 利用flex的话,添加多一个justify-content: center;即可

相关文章

  • css居中

    1、如何让块级元素水平居中?如何让行内元素水平居中? 块级元素使用margin:0 auto;(上下为0,左右au...

  • web前端入门到实战:行内和块状元素水平居中与单行或多行文本垂直

    行内元素水平居中如何设置?如果被设置元素为文本、图片等行内元素时,水平居中是通过给父元素设置 text-align...

  • web前端面试之CSS布局(码动未来)

    web前端面试之CSS布局(码动未来) 2.2.1、如何居中div?如何居中一个浮动元素?如何让绝对定位的div居...

  • 前端面试准备小结

    前端方面: 1. call apply bind的区别 2. 如何居中一个元素(block元素如何,inline元...

  • 前端学习笔记_css常见居中方式

    HTML结构如下 想要child横向居中,如何做呢? 设置父元素居中,子元素为inline-block即可。但是,...

  • 所有CSS居中方法,了解一下?

    目录 水平居中内联元素水平居中块级元素水平居中多个块级元素的水平居中 垂直居中内联元素垂直居中单行内联元素多行内联...

  • Css布局总结

    text-align规定该容器内部的行内元素相对于父级如何对齐,只对行内以及行内块元素有效。 居中 居中:居中分为...

  • css居中方式总结(亲测有效)

    水平居中(行内元素水平居中、块级元素水平居中) 垂直居中 水平垂直居中 行内元素水平居中 text-align: ...

  • 如何水平居中一个元素

    主要介绍水平居中,垂直居中,水平垂直居中的各种办法: 行内元素水平居中 如果块级元素内部包着也是一个块级元素,我们...

  • 20180426前端笔记

    CSS相关: 一 如何实现水平、竖直居中布局: 内联元素居中: 1.文本等行内元素:设置text-align: c...

网友评论

      本文标题:一个元素如何居中

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