css/css3实现未知宽高元素的垂直居中和水平居中

其实在平常的一些布局中也经常有要实现元素的垂直居中和水平居中的的需要,下面来写几种css/css3实现的未知宽高元素的水平和垂直居中的写法

ps:不考虑兼容问题(下次会写js实现元素的水平and垂直居中 )

第一种 css3的transform

.ele{
/*设置元素绝对定位*/
    position:absolute;
/*top 50%*/
    top: 50%;
/*left 50%*/
    left: 50%;
/*css3   transform 实现*/
    transform: translate(-50%, -50%);
}

第二种 flex盒子布局

.ele{
/*弹性盒模型*/
    display:flex;
/*主轴居中对齐*/
    justify-content: center;
/*侧轴居中对齐*/
    align-items: center;
 }

第三种 display的table-cell

.box{
/*让元素渲染为表格单元格*/
    display:table-cell;
/*设置文本水平居中*/
    text-align:center;
/*设置文本垂直居中*/
    vertical-align:middle;
} 

第三种是给父级添加样式。先写这几种, 够大家用了,还有通过伪类实现居中的效果,有兴趣的可以自己敲下试试

时间: 2024-10-18 14:42:14

css/css3实现未知宽高元素的垂直居中和水平居中的相关文章

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

方法一 思路:显示设置父元素为:table,子元素为:cell-table,这样就可以使用vertical-align: center,实现水平居中优点:父元素(parent)可以动态的改变高度(table元素的特性)缺点:IE8以下不支持 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>未知宽高元素水平垂直居中&l

css如何实现未知宽高div中图片垂直水平居中效果

css如何实现未知宽高div中图片垂直水平居中效果:在有时候可能有这样的情况,那就是想让一个图片在div中实现垂直水平居中效果,但是有时候div的尺寸是位置的,下面通过代码实例介绍一下在这种情况下如何实现图片的垂直水平居中效果.代码如下:实例一: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content=&q

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

一.transform <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> </head> <body> <!--方法1:一个未知宽高的弹出框,水平垂直居中--> <div style="position:relative;width:100%;height:600px;border:1px solid #888">

div+css实现未知宽高元素垂直水平居中

div+css实现未知宽高元素垂直水平居中.很多同学在面试的时候都会遇到这样的问题:怎么用div+css的方法实现一个未知宽高的弹出框垂直水平居中??如果用JS的话就好办了,但是JS的使用会对页面性能造成影响,而且能用CSS实现的干嘛用JS呢,嘿嘿 <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>div+css实现未

网页元素居中攻略记_(3)已知宽高元素水平垂直居中

已知宽高元素水平垂直居中 方案 使用了position的absolute属来实现,在上篇文章的垂直居中的基础上加上水平居中 代码 index.html <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8"> <title>已知宽高元素水平垂直居中</title> <style> #container { posit

网页元素居中攻略记_(5)未知宽高元素绝对居中

题外话 以前,我们要自适应全局居中,需要借助JS或者JQ来实现,现在有了CSS3就可以省去好多功夫了,为什么这么说!! 请看比较: 传统的绝对居中 #container{ position:abosolute; top:50%; left:50%; margin-left:-包含块宽度的一半(如 -300px ); margin-top: -包含块高度的一半; } 这种是实现了包含块的绝对居中,但是有一个问题,就是宽高度无法自适应(需固定宽高)-比如动态增加数据的时候,用这个就不大合适了-.这时

未知宽高div水平垂直居中3种方法

<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> </head> <body> <!--方法1:一个未知宽高的弹出框,水平垂直居中--> <div style="position:relative;width:100%;height:600px;border:1px solid #888">方法1 <div

未知宽高的div怎么垂直水平居中

恨到弹窗都需要实现垂直水平居中的功能,知道宽高可以用绝对定位,加上设置margin为负值,大小为宽高的一半即可 1 #demo{ 2 position: absolute; 3 width: 200px; 4 height: 200px; 5 top: 50%; 6 left: 50%; 7 margin-left: -100px; 8 margin-top: -100px; 9 } 如果不知道宽高怎么来垂直居中呢?其实很简单,只要加上transform: translate(-50%, -50

css如何实现未知宽高块元素垂直水平居中效果

<!doctype html><html><head><meta charset="utf-8"><title>块元素垂直水平居中</title><style> ul,li{list-style:none;padding:0;margin:0;} .content{border-top:1px solid #8e8e8e;border-bottom:1px solid #8e8e8e;width:100