在做彈窗元件時,需要實現元素水平垂直居中,總結記錄一下。(有借鑑)
<
!doctype html>
<
/title>
"utf-8"
>
"text/css"
>
*.box
.left
<
/style>
<
/head>
="box"
>
="left"
>qwe<
/div>
<
/div>
<
/body>
<
/html>
絕對定位到螢幕的一半,是相對於左上角的座標點,還需要設定上移height的50%,左移width的50%。父子關係的話,需要給父元素設定position: relative,子元素是相對于父元素絕對定位的。
.left
定位方法前提是寬度和高度已知,當兩者未知時,使用transform,但是,但是,這種方法可能會有文字模糊的問題,當畫素是非整數時。並且,在父元素使用transform,會限制positon:fixed,不能固定變成跟absolute一樣。
可以看下這篇文章,詳細介紹了transform的影響:css3 transform對普通元素的n多渲染影響
<
!doctype html>
<
/title>
"utf-8"
>
"text/css"
>
*.box
.left
<
/style>
<
/head>
="box"
>
="left"
>
123qwe<
/p>
<
/div>
<
/div>
<
/body>
<
/html>
是在父元素上進行設定的,對於文字居中也有效。
flex瀏覽器相容
CSS實現元素水平居中 垂直居中 水平垂直居中
1.元素水平居中 1.1行內元素水平居中 1.2塊級元素水平居中 1.2.1定寬塊級元素的水平居中 1.2.2不定寬塊級元素水平居中 2.元素垂直居中 2.1 單行文字垂直居中 2.2 多行文字垂直居中 2.3塊級元素垂直居中 3.元素水平垂直居中 像文字text 影象img 按鈕等行內元素要實現水...
css實現元素水平垂直居中
利用負邊距實現子元素居中 相對于父元素 position relative 需已知子元素的width與height 且把子元素的position設為absolute,絕對定位 以及設定left和top為50 再加上負邊距,margin left值為width的一半,同樣的,margin top值為h...
css實現元素垂直水平居中
css實現垂直居中的方法 方法一 父元素display flex 子元素margin auto auto fa son 方法二 父元素display flex 並設定justify content center align items center fa son 方法三 在不改變父元素的前提下,只修...