相信大家都会遇到这样的问题,要求一个块上下左右居中,在这里我总结了几个好用的方法

1.已知要居中的块width height

假设  content 要在f里上下左右居中

<div class="f"><div class="content"></div></div>

<style>

.f{

width: 800px;

height: 800px;

  position:relative;

}

.content{

  width:500px;

height:500px;

  position:absolute;

  top:50%;

  left:50%;

  margin-top:-250px;

  margin-left:-250px;

}

</style>

这样子相对于父上下左右居中,,这是常见的一种解决方案原理就是子相对于父绝对定位,先下移左移50%,此时子的左上脚在父的中心,再回移自己的宽高一半,即可居中。

2.已知宽,不知高,(确定高度的也可用)

.f{

width: 800px;

height: 800px;

}

.content{

  width:500px;

height:auto;

  margin:auto auto

}

这种方法明显比第一种简化很多。

但前两种方法都是在已知宽度的情况下才行,,应用场景不够全面。下面说一种 终极方法,我自己也在很多场景下应用到了

3.不知 width height

.toast {

border-radius: 5px;

position: fixed;

top: 50%;

left: 50%;

-webkit-transform: translate(-50%, -50%);

-ms-transform: translate(-50%,-50%);

-moz-transform: translate(-50%,-50%);

-o-transform: translate(-50%,-50%);

transform: translate(-50%, -50%);

z-index: 12;

background: rgba(0,0,0,0.7);

color: #fff;

padding: 5px 10px;

line-height: 20px;

font-size: 16px;

text-align: center;

}

这是我写的toast提示的样式,在未知宽高的情况下相对屏幕上下左右居中。

原理与第一个相似,都是先相对父级移50%;再相对自己移回-50%;

css div上下左右居中的更多相关文章

  1. css:子元素div 上下左右居中方法总结

    最近在面试,不停地收到了知识冲击,尤其是对于一些基础的css.html.js问题居多,所以自我也在做反思,今天就css问题,如何让一个子元素div块元素上下左右居中 (以下总结方法,都已得到验证). ...

  2. 用CSS让DIV上下左右居中的方法

    转载自喜欢JS的无名小站 例如 一个父div(w:100%;h:400px)中有一个子div(w:100px;100px;).让其上下左右居中. 方法一(varticle-align) 理念 利用表格 ...

  3. css+div上下左右自适应居中

    主要记录自己日常积累的布局相关的东西,持续更新中. 1.登录框上下左右自适应居中 以前想要把登录表单始终放置在页面的中间,花了不少心思,一直以来用的解决方法都是用js,感觉有点麻烦不是很好,于是在网上 ...

  4. 关于一个div上下左右居中的css方法

    1:通过position:absolute定位,上下左右的值都设为0,margin:auto:需要知道div的宽高 { width: 64px; height: 64px; border: 1px s ...

  5. div上下左右居中几种方式

    1.绝对定位(常用于登录模块)备注:前提条件div需要有宽高 #html <div class="box"></div> #css .box{ positi ...

  6. div上下左右居中方法

    方法一:在浏览器中只有一个div的情况 { position:fixed; position:fixed; ; ; ; ; margin:auto; } 方法一 方法二:一个父元素div和一个已知宽度 ...

  7. 9.如何让一个div 上下左右居中?【CS

      方法1:[绝对定位50%-本身50%]              position:absolute; left:50%; top:50%;              transform: tra ...

  8. DIV 上下左右居中黑科技

    <style> #info{height:0px; width:0px;top:50%; left:50%;position:absolute;} #center{background:# ...

  9. div上下左右居中

    链接.father { width: 300px; height:150px; position: relative; } .son { position: absolute; top: 0; rig ...

随机推荐

  1. 跟我从零基础学习Unity3D开发--U3d脚本注意事项及两个基本函数的简单介绍

    经过上一篇的学习,我相信开发环境您已经搭好了,如果还没有搭好可以百度一下. 今天主要讲的有以下几点: 第一:Unity3D中的C#脚本与.net中的C#写法的区别 1.Unity3D C#脚本不支持命 ...

  2. 关于Interception框架

    对于OOP来说,是个树形结构,如果要实现多个子数之间的共享服务,例如很多子树都用到日志服务,这时候AOP的横切关注 cross cutting concerns就非常有用了.如果要使每个类具备一项功能 ...

  3. 在C#项目中需要用double类型操作MSSQL float类型数据(附C#数据类型和SQL数据类型对照)

    C#操作SQL Float类型,数据会多很多小数,原来是C#的float和sql的float类型不一致.以下是数据库中与C#中的数据类型对照. /// <summary> /// 数据库中 ...

  4. CCF 201604-2 俄罗斯方块

    题目不难,但是感觉很有意思.一开始忘了把调试信息注释掉,WA了两次... 试题编号: 201604-2 试题名称: 俄罗斯方块 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 ...

  5. viewport就是这回事

    前言 对于移动webapp开发人员来说,viewport是个很重要的东西,容易用但很多时候都是不明白的,于是我决心去弄清楚它. <meta name="viewport" c ...

  6. iOS 8 Extensions

       本文由海水的味道收集整理,欢迎转载    当前版本 0.0.1  iOS 8 Extensions 一.扩展概述 扩展(Extension)是iOS 8中引入的一个非常重要的新特性.扩展让app ...

  7. c# 程序设计教程笔记

    值类型:[简单类型[整数类型(sbyte,byte,short,ushort,int uint,long....),字符类型),布尔类型,实数类型],结构类型, 枚举类型]. 引用类型:[类,委托,数 ...

  8. MlLib--逻辑回归笔记

    批量梯度下降的逻辑回归可以参考这篇文章:http://blog.csdn.net/pakko/article/details/37878837 看了一些Scala语法后,打算看看MlLib的机器学习算 ...

  9. 简明Linux命令行笔记:mv

    重命名.覆盖或移动文件 mv [options] existing-file new-filename mv [options] existing-file-list directory mv [op ...

  10. mysql 递归查询

    1.创建表: DROP TABLE IF EXISTS `t_areainfo`; CREATE TABLE `t_areainfo` ( `id` ) ' AUTO_INCREMENT, `) ', ...