1. 水平居中

效果:

<!DOCTYPE html>
<html lang="en"><head><title>水平居中</title><style type="text/css">body {background-color: #CCC;}.container {margin: 0 auto;background-color: #ddd;text-align: center;}</style>
</head><body><div class="container"><span>这是c_kite的CSDN博客</span></div>
</body></html>

或者使用绝对定位方式

    .container {position: absolute;left: 50%;width: 960px;margin-left: -480px;text-align: center;background: #ddd;}

2. 自适应块级元素水平居中

效果: 宽度不固定, 也可以自适应居中

<!DOCTYPE html>
<html lang="en"><head><title>水平居中</title><style type="text/css">.container{display: inline-block;}.box {width: 50px;height: 50px;list-style: none;border: 1px solid #ccc;border-radius: 50%;padding: 0;box-shadow: 0 6px 12px rgba(0,0,0,.175);}.container .center{position: relative;left: 50%; /*左边缘移动到父元素的中心*/transform: translateX(-50%); /*左边缘向左移动自身宽度的一半*/text-align: center; /*文字居中*/}</style>
</head><body><div class="container"><div class="box"></div><div class="center">hi</div></div>
</body></html>

3. 行内元素垂直居中

单行文本垂直居中

效果:

<!DOCTYPE html>
<html lang="en"><head><title>水平居中</title><style type="text/css">.row {width: 300px;height: 50px;line-height: 50px;border: 1px solid black;text-align: center;}</style>
</head><body><div class="row">你好你好你好</div>
</body></html>

4. 多行文本垂直居中

( 1 ). 不固定高度垂直居中

效果:


代码:

<!DOCTYPE html>
<html lang="en"><head><title>水平居中</title><style type="text/css">.row {width: 200px;padding: 50px;border: 1px solid black;}</style>
</head><body><div class="row">你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好</div>
</body></html>

( 2 ). 固定高度多行文本居中

效果:

<!DOCTYPE html>
<html lang="en"><head><title>水平居中</title><style type="text/css">.wrap {height: 200px;display: table;/*此元素会作为块级表格来显示*/}.content {vertical-align: middle;/*把此元素放置在父元素的中部*/display: table-cell;/*此元素会作为一个表格的单元格显示*/border: 1px solid black;width: 400px;}</style>
</head><body><div class="wrap"><div class="content">博主非常喜欢林徽因的诗句: 我情愿化成一片落叶, 让风吹雨打到处飘零; 或流云一朵,在澄蓝天, 和大地再没有些牵连。</div></div>
</body></html>

5. 块级元素的垂直居中

( 1 ). 固定高度

效果:

代码:

<!DOCTYPE html>
<html lang="en"><head><title>水平居中</title><style type="text/css">.wrap {width: 100px;height: 100px;position: absolute;left: 50%;top: 50%;margin-left: -50px;margin-top: -50px;background: #dddddd;}</style>
</head><body><div class="wrap">博主非常喜欢林徽因的诗句</div>
</body></html>

( 2 ). 不固定高度

效果:

代码:

<!DOCTYPE html>
<html lang="en"><head><title>水平居中</title><style type="text/css">.wrap {position: absolute;left: 50%;top: 50%;transform: translate(-50%, -50%);/*左, 上边缘向左, 上移动自身宽, 高度的一半*/background: #dddddd;}</style>
</head><body><div class="wrap">博主非常喜欢林徽因的诗句</div>
</body></html>

6. 基于视口单位的解决方案

效果:

代码:

<!DOCTYPE html>
<html lang="en"><head><title>水平居中</title><style type="text/css">.wrap {width: 200px;padding: 20px;margin: 50vh auto 0;/*外边距采用视口单位*/transform: translateY(-50%);/*上边缘向上移动自身高度的一半*/background: #dddddd;}</style>
</head><body><div class="wrap">博主非常喜欢林徽因的诗句</div>
</body></html>

7. 基于FlexBox的解决方案

当使用flexbox的时候. 样式margin设置为auto不仅在水平方向上居中, 在垂直方向上也居中, 如果仅需要实现单独的垂直居中需求, 需使用align-self设置为center
效果:

代码:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>水平居中</title><style type="text/css">body{display: flex;min-height: 100vh;margin: 0;}.wrap {margin: auto;padding: 20px;background: #dddddd;}</style>
</head><body><div class="wrap">博主非常喜欢林徽因的诗句</div>
</body></html>

CSS七种常用居中方式相关推荐

  1. QT学习笔记(七):定时器事件的3种常用使用方式

    QT学习笔记(七):定时器事件的2种常用使用方式 Qt中定时器的使用有2种方法:一种是使用QObject类提供的定时器通过重载 timerEvent 事件处理过程函数,一种就是使用QTimer类. 其 ...

  2. 七种Vue3传值方式

    七种Vue3传值方式 props emit v-model refs provide/inject eventBus vuex/pinia(状态管理工具) Props方式 Props方式是Vue中最常 ...

  3. 七种常用的PHP程序开发工具

    互联网的流行使得,软件程序发的需求也越来越大,其中PHP程序开发就是一个先例.PHP是英文超级文本预处理语言Hypertext Preprocessor的缩写.PHP 是一种 HTML 内嵌式的语言, ...

  4. jQuery中ajax的4种常用请求方式

    jQuery中ajax的4种常用请求方式:1.$.ajax()返回其创建的 XMLHttpRequest 对象. $.ajax() 只有一个参数:参数 key/value 对象,包含各配置及回调函数信 ...

  5. 伪元素在父元素中居中_web前端Html5开发CSS之元素五大居中方式,实用又简单!...

    大家是不是对元素居中的知识点很是模糊?是不是苦于找不到一个总结的通俗易懂的说明?是不是自己懒得去总结?今天小编在前端的学习与实践中总结出的元素的五大居中方式,黏贴了代码并对代码做了解释,希望对迷茫的有 ...

  6. 移动小额支付业务系统几种常用实现方式的分析和比较

    关键词: 移动小额支付   小额支付   移动支付   电子支付    摘  要: 随着移动小额支付业务逐渐走入人们的日常生活中,它已成为运营商争夺的数据业务焦点之一.文章对当前移动小额支付业务系统的 ...

  7. Mysql中的七种常用查询连接详解

    目录 一.概述 二.连接查询的分类 三.七种常用连接查询详解 1.笛卡尔积: 2.内连接 2.1隐式与显式连接 ?2.2等值连接 ?2.3非等值连接 ?2.4自连接 3外连接 3.1左外连接: ?3. ...

  8. HTTP的两种常用请求方式GET和POST

    HTTP的两种常用请求方式GET和POST HTTP:HTTP协议(HyperText Transfer),用于从万维网(WWWW:World Wide Web)服务器传输超文本到本地浏览器的传输协议 ...

  9. Javascript创建对象的七种常用方式

    js常用的几种创建对象的方式有: 1.{} 2.new Object() 3.使用字面量 4.工厂模式 5.构造函数模式(constructor) 6.原型模式(prototype) 7.构造函数+原 ...

最新文章

  1. mock模拟的数据能增删改查吗_Mock.js模拟数据,脱离后端独立开发,实现增删改查功能...
  2. Openstack_通用模块_Oslo_vmware 创建 vSS PortGroup
  3. Programming Computer Vision with Python (学习笔记八)
  4. QT的QDesignerWidgetBoxInterface类的使用
  5. mysql5.7.11源码安装_MySQL5.7.10最新版本源代码安装详细过程_MySQL
  6. Golden Gate 与 Oracle DataGuard的区别
  7. 接口测试用例模板_ITest:京东数科接口自动化测试实践
  8. 不能bostype没有元数据异常_手把手教你用Python画个箱形图,找出“脏数据”
  9. c语言除法中的小数点,高精度除法小数点位数
  10. 解决eclipse 错误: 找不到或无法加载主类
  11. 阿里云个人网站备案流程
  12. 千万级用户ms级抽奖N名设计方案
  13. 苹果 iOS/iPadOS 14.4 beta 2新功能
  14. Ubuntu16.04+ROS kinetic +Basler_camera环境配置以及相机标定
  15. 多媒体艺术家jaime levy在网站甚至还没有存在之前就处于网页设计的最前沿
  16. 桌面计算机图标带虚线框,win10系统桌面图标的虚线框去掉的具体办法
  17. Shader——《真三国无双》城墙着火特效
  18. 2021-2027全球与中国金属烤瓷牙冠市场现状及未来发展趋势
  19. 数据结构与算法A实验六图论---7-7 最短工期 (拓扑排序)
  20. jQuery实现的各种不同样式弹出框

热门文章

  1. 170多年技术+无人机!摄影测量迎来新的发展!!!
  2. 2019最强一键刷机root教程,安卓用户必备!附带工具分享~
  3. 安卓rxjava面试,15个经典面试问题及回答思路,已拿offer
  4. WIN10开机前自启进程
  5. HDU 4507 吉哥系列故事――恨7不成妻 (平方拆解 + *数位DP 总结)
  6. web前端工程师工作中遇到难以解决的问题
  7. renpy-快速入门2
  8. android解析pdf文件muPdf
  9. 学成在线项目-轮播图banner
  10. 我知道女生学习数学竞赛很难,但我仍想要坚持下去