网页中常常需用让绝对定位元素水平垂直居中,下面介绍2种方法:

一 元素宽度未知

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
.father {
width: 800px;
height: 400px;
background-color: pink;
margin: 100px auto;
position: relative;
}
.son {
width: 10%;
height: 100px;
background-color: purple; height: 50%;
overflow: auto;
margin: auto;
position: absolute;
top: 0; left: 0; bottom: 0; right: 0;
}
</style>
<title>Document</title>
</head>
<body>
<!-- 绝对定位 水平垂直居中 -->
<div class="father">
<div class="son"></div>
</div>
</body>
</html>
</html>

二 元素宽度已知

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
.father {
width: 800px;
height: 400px;
background-color: pink;
margin: 100px auto;
position: relative;
}
.son {
width: 200px;
height: 100px;
background-color: purple;
position: absolute;
left: 50%;
margin-left: -100px; top: 50%;
margin-top: -50px;
}
</style>
<title>Document</title>
</head>
<body>
<!-- 绝对定位 水平垂直居中 -->
<div class="father">
<div class="son"></div>
</div>
</body>
</html>

二 元素宽度已知

  使用CSS3中的新特性transform变形来做,移动盒子的位置

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
.father {
width: 800px;
height: 400px;
background-color: pink;
margin: 100px auto;
position: relative;
}
.son {
width: 20%;/*相对于父级的百分比*/
height: 30%;
background-color: purple;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);/*相对于自己的百分比*/
}
</style>
<title>Document</title>
</head>
<body>
<!-- 绝对定位 水平垂直居中 -->
<div class="father">
<div class="son"></div>
</div>
</body>
</html>
</html>

【Web】CSS实现绝对定位元素水平垂直居中的更多相关文章

  1. CSS布局:元素水平垂直居中

    CSS布局:元素水平垂直居中 本文将依次介绍在不同条件下实现水平垂直居中的多种方法 水平垂直居中是在写网页时经常会用到的需求,在上两篇博客中,分别介绍了水平居中和垂直居中的方法.本文的水平垂直居中就是 ...

  2. css 常用的绝对定位元素水平垂直居中的方法

    两种方法都能够实现: 1. div { height:80%; /*一定要设置高度*/ overflow:hidden;/*建议设置*/ margin: auto; position: absolut ...

  3. css布局------块元素水平垂直居中的四种方法

    HTML <div class="parent answer-1"> <div></div></div> CSS .parent { ...

  4. CSS元素水平垂直居中方法总结(主要对大漠以及张鑫旭博客所述方法进行了归纳)

    本文主要是对主流居中方法进行了归纳,有些地方甚至就是把别人的代码直接复制过来的,没有什么自己的东西,除了大漠以及张鑫旭的方法外,还有来自司徒正美.怿飞博客的几个方法 以下方法,由于测试环境的原因,IE ...

  5. css进阶 04-如何让一个元素水平垂直居中?

    04-如何让一个元素水平垂直居中? #前言 老板的手机收到一个红包,为什么红包没居中? 如何让一个子元素在父容器里水平垂直居中?这个问题必考,在实战开发中,也应用得非常多. 你也许能顺手写出好几种实现 ...

  6. css中元素水平垂直居中4种方法介绍

    table-cell轻松设置文本图片水平垂直居中 让一个元素垂直居中的思路:把这个元素的容器设置为table-cell,也就是具有表格单元格的特性,再使用vertical-align(这个属性对blo ...

  7. CSS未知宽高元素水平垂直居中

    方法一 :table.cell-table 思路:显示设置父元素为:table,子元素为:cell-table,这样就可以使用vertical-align: center,实现水平居中优点:父元素(p ...

  8. css 实现元素水平垂直居中总结5中方法

    个人总结,如有错误请指出,有好的建议请留言.o(^▽^)o 一.margin:0 auto:text-align:center:line-height方法 <div id="divAu ...

  9. CSS元素水平垂直居中的方法

    1.  元素水平居中 1.1  设置父元素的属性 text-align: center; 说明:此属性只针对父元素的子元素为内联元素时有效,比如:img,input,select,button等(行内 ...

随机推荐

  1. 【Nodejs】Node.js(Express)の環境構築

    [Express]の環境 参考URL:http://expressjs.com/en/starter/generator.html ①Node.jsの準備 (参考URL:https://www.cnb ...

  2. Shell的18条常用命令整理

    1.   ls: 类似于dos下的dir命令 ls最常用的参数有三个: -a -l -F. ls –a Linux上的文件以.开头的文件被系统视为隐藏文件,仅用ls命令是看不到他们的,而用ls -a除 ...

  3. delet[] 和delete

    string *stringPtr1 = new string; string *stringPtr2 = new string[100]; …… delete stringPtr1; delete ...

  4. The following packages have unmet dependencies错误

    当出现类似这类错误: The following packages have unmet dependencies: python-dev : Depends: python (= 2.7.5-5ub ...

  5. SOA与微服务的区别

    乍一看: 1.SOA更抽象. 2. SOA是拆分服务后,用ECS等手段,将服务组合调度. 微服务则是拆分服务后组合成各种业务. https://blog.csdn.net/HeatDeath/arti ...

  6. swift - 添加定时器

    mport UIKit /// 控制定时器的类 class ZDTimerTool: NSObject { /// 定时器 // private var timer: Timer? /// GCD定时 ...

  7. ios NSUserDefaults存储数据(偏好设置)

    ios NSUserDefaults存储数据(偏好设置) 1.NSUserDefaults用于存储数据量小的数据,主要是用户配置,但也可以支持存储一些小数据包括:NSString, NSNumber, ...

  8. html5的鼠标拖拽

    鼠标拖拽 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...

  9. python 数据类型 之 集合

    集合是一个数学概念:由一个或多个确定的元素所构成的整体叫做集合 集合的三个特性: 1.确定性 (element必须可hash,不可变类型是可hash的) 2.互异性(集合中element 不能重复) ...

  10. C# 一段通用的写log 日志的好程序

    public void Write(string text) { FileStream fs = new FileStream(Application.StartupPath+"/log.t ...