如何使用CSS
Justin Polie..
4550
您可以将此CSS应用于内部 当然,您不必设置 如果你的目标是IE8 +,那么最好改为: 它将使内部元素水平居中,并且无需设置特定的工作 这里的工作示例:
您可以将此CSS应用于内部 当然,您不必设置 如果你的目标是IE8 +,那么最好改为: 它将使内部元素水平居中,并且无需设置特定的工作 这里的工作示例:
如果您不想在内部设置固定宽度,
最好的方法是使用CSS 3. 根据您的可用性,您也可以使用这些 Flex:
链接2 链接3 链接4
而这也解释了为什么盒模型是最好的办法:
为什么W3C盒型号更好? 假设您的div很 确保父元素定位,即相对,固定,绝对或粘性. 如果您不知道div的宽度,可以使用 https://jsfiddle.net/gjvfxxdj/ 我创建了这个例子来展示如何纵向和横向 代码基本上是这样的: 和... 一些海报提到了CSS 3的中心使用方式 此语法已过时,不应再使用.[另见本文]. 因此,为了完整起见,这是使用Flexible Box布局模块集中在CSS 3中的最新方式. 所以如果你有简单的标记,如: ...并且您希望将项目置于框中,这是您在父元素(.box)上所需的内容:
如果您不想设置固定宽度而不想要额外的边距,请添加 您可以使用: 水平和垂直.它适用于相当现代的浏览器(Firefox,Safari/WebKit,Chrome,Internet Explorer 10,Opera等)
如果不给它宽度,它就不能居中,否则默认情况下整个水平空间. CSS3的box-align属性 设置 我最近不得不将一个"隐藏"的div(即display:none;)居中,其中有一个表格形式,需要在页面上居中.我编写了以下jQuery来显示隐藏的div然后将CSS更新为自动生成的表格宽度并更改边距以使其居中.(通过单击链接触发显示切换,但不需要显示此代码.) 注意:我正在分享此代码,因为Google将我带到了这个Stack Overflow解决方案,除了隐藏的元素没有任何宽度并且在显示之前无法调整大小/居中之外,一切都会有效.
将div垂直居中放置div: 并且,要使div在垂直和水平方向上完全居中: 希望它对您有所帮助。编码愉快! 我已将内联样式应用于内部div.使用这个. CSS 3: 您可以在父容器上使用以下样式来均匀地水平分布子元素: 一个很好的DEMO关于不同的值 CanIUse:浏览器兼容性 试试吧!:
我最近发现的好东西,混合使用 请注意,您必须使用跨度(和 CSS: 见这里的例子. 您可以使用CSS Flexbox实现此目的.您只需要将3个属性应用于父元素即可使一切正常运行. 看看下面的代码,这将使您更好地理解属性. 了解有关CSS Flexbox的更多信息
我大多使用这个CSS来居中div. Make it simple!
#inner {
width: 50%;
margin: 0 auto;
}
width
为50%
.任何小于包含的宽度margin: 0 auto
是什么呢实际定心.
#inner {
display: table;
margin: 0 auto;
}
width
.#inner {
display: table;
margin: 0 auto;
border: 1px solid black;
}
#outer {
border: 1px solid red;
width:100%
}
1> Justin Polie..:#inner {
width: 50%;
margin: 0 auto;
}
width
为50%
.任何小于包含的宽度margin: 0 auto
是什么呢实际定心.
#inner {
display: table;
margin: 0 auto;
}
width
.#inner {
display: table;
margin: 0 auto;
border: 1px solid black;
}
#outer {
border: 1px solid red;
width:100%
}
2> Alfred..:div
可以执行以下操作:#outer {
width: 100%;
text-align: center;
}
#inner {
display: inline-block;
}
3> Konga Raju..:盒子型号:
#outer {
width: 100%;
/* Firefox */
display: -moz-box;
-moz-box-pack: center;
-moz-box-align: center;
/* Safari and Chrome */
display: -webkit-box;
-webkit-box-pack: center;
-webkit-box-align: center;
/* W3C */
display: box;
box-pack: center;
box-align: center;
}
#inner {
width: 50%;
}
box-orient, box-flex, box-direction
属性.阅读有关居中子元素的更多信息
在开始实施此解决方案之前,请务必先阅读[此答案](http://stackoverflow.com/a/16144913/1652962).
Safari,截至目前,仍然需要`-webkit`标志用于flexbox(`display:-webkit-flex;`和`-webkit-align-items:center;`和`-webkit-justify-content:center;`)
4> nuno_cruz..:200px
宽:.centered {
position: absolute;
left: 50%;
margin-left: -100px;
}
transform:translateX(-50%);
而不是负边距.
5> Tom Maton..:align
.#outer {
position: relative;
}
#inner {
margin: auto;
position: absolute;
left:0;
right: 0;
top: 0;
bottom: 0;
}
center
当你重新调整屏幕大小时它会保持不变.
对于这种方法+1,我正要回答它.请注意,您必须在要水平居中的元素上声明宽度(如果垂直居中,则为高度).这是一个全面的解释:http://codepen.io/shshaw/full/gEiDt.垂直和/或水平对中元素的多功能和广泛支持的方法之一.
你不能在div中使用填充,但如果你想给幻觉使用相同颜色的边框.
6> Danield..:display:box
..box {
display: flex;
flex-wrap: wrap; /* Optional. only if you want the items to wrap */
justify-content: center; /* For horizontal alignment */
align-items: center; /* For vertical alignment */
}
.box {
display: flex;
flex-wrap: wrap;
/* Optional. only if you want the items to wrap */
justify-content: center;
/* For horizontal alignment */
align-items: center;
/* For vertical alignment */
}
* {
margin: 0;
padding: 0;
}
html,
body {
height: 100%;
}
.box {
height: 200px;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
border: 2px solid tomato;
}
.box div {
margin: 0 10px;
width: 100px;
}
.item1 {
height: 50px;
background: pink;
}
.item2 {
background: brown;
height: 100px;
}
.item3 {
height: 150px;
background: orange;
}
7> Salman von A..:display: inline-block
到您的元素中.#element {
display: table;
margin: 0 auto;
}
与display:inline-block相同的要求(http://www.quirksmode.org/css/display.html)
8> iamnotsam..:以未知高度和宽度为中心
.content {
position: absolute;
left: 50%;
top: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
9> gizmo..:
如果你不知道宽度?说因为内容是动态的?
10> neoneye..:#outer {
width:100%;
height:100%;
display:box;
box-orient:horizontal;
box-pack:center;
box-align:center;
}
在开始实施此解决方案之前,请务必先阅读[此答案](http://stackoverflow.com/a/16144913/1652962).
11> Sneakyness..:width
并设置margin-left
和margin-right
到auto
.但这仅适用于横向.如果你想要两种方式,你只需要两种方式.不要害怕尝试; 它不像你会打破任何东西.
12> James Moberg..:$(function(){
$('#inner').show().width($('#innerTable').width()).css('margin','0 auto');
});
#outer {
display: flex;
align-items: center;
}
#outer{
display: flex;
justify-content: center;
align-items: center;
}
36> 小智..:
37> Legends..:display: flex;
justify-content: space-between; // <-- space-between or space-around
justify-content
.#containerdiv {
display: flex;
justify-content: space-between;
}
#containerdiv > div {
background-color: blue;
width: 50px;
color: white;
text-align: center;
}
38> Josh Mc..:line-height
+ vertical-align
和50%
左边的技巧,你可以center
使用纯CSS在水平和垂直两个动态大小的盒子内部动态大小的盒子.inline-block
),在现代浏览器+ IE8中进行测试.
HTML:
Center dynamic box using only css test
Content
Content
Content
Content
.container
{
position:absolute;
left:0;right:0;top:0;bottom:0;
overflow:hidden;
}
.center
{
position:absolute;
left:50%; top:50%;
}
.center-container
{
position:absolute;
left:-2500px;top:-2500px;
width:5000px;height:5000px;
line-height:5000px;
text-align:center;
overflow: hidden;
}
.dyn-box
{
display: inline-block;
vertical-align: middle;
line-height: 100%;
/* Purely asthetic below this point */
background: #808080;
padding: 13px;
border-radius: 11px;
font-family: arial;
}
.dyn-head
{
background:red;
color:white;
min-width: 300px;
padding: 20px;
font-size: 23px;
}
.dyn-body
{
padding: 10px;
background:white;
color:red;
}
39> 小智..:#inner {
width: 50%;
margin: 0 auto;
}
40> Saurav Rasto..:#outer {
display: flex;
align-content: center;
justify-content: center;
}
#outer {
display: flex;
align-items: center;
justify-content: center;
border: 1px solid #ddd;
width: 100%;
height: 200px;
}
41> Rajesh..:#inner
div 下面的CSS怎么样:#inner {
width: 50%;
margin-left: 25%;
}
42> 小智..:#outer {
display: flex;
justify-content: center;
}
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有