是否有任何方法在主父元素中垂直或水平地居中html元素?
当前回答
你可以像这样直接写入你的CSS文件:
.content { 位置:绝对的; 上图:50%; 左:50%; 变换:翻译(-50%,-50%); } <div class = "content" > <p>一些文本</p> < / div >
其他回答
Bootstrap 4使用flex属性解决了这个问题。你可以使用这些类:
<link href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css" rel="stylesheet"/> <div class="d-flex align-items-center"> <button type="submit" class="btn btn-primary">创建</button> < / div >
这些类将使您的内容水平和垂直居中。
我用这个
<style>
html, body {
height: 100%;
margin: 0;
padding: 0 0;
}
.container-fluid {
height: 100%;
display: table;
width: 100%;
padding-right: 0;
padding-left: 0;
}
.row-fluid {
height: 100%;
display: table-cell;
vertical-align: middle;
width: 100%;
}
.centering {
float: none;
margin: 0 auto;
}
</style>
<body>
<div class="container-fluid">
<div class="row-fluid">
<div class="offset3 span6 centering">
content here
</div>
</div>
</div>
</body>
如果你试图在div中居中一个图像,但图像不会居中,这可能描述了你的问题:
JSFiddle演示的问题
<div class="col-sm-4 text-center">
<img class="img-responsive text-center" src="myPic.jpg" />
</div>
img-responsive类向图像标记添加了一个display:block指令,它将停止text-align:center(文本中心类)的工作。
解决方案:
<div class="col-sm-4">
<img class="img-responsive center-block" src="myPic.jpg" />
</div>
解决方案的JSFiddle演示
添加center-block类将覆盖使用img-responsive类放入的display:block指令。如果没有img-responsive类,图像将仅通过添加文本中心类居中
此外,您应该了解flexbox的基础知识以及如何使用它,因为Bootstrap 4现在本机使用它。
这是布拉德·希夫制作的一个优秀的、快节奏的视频教程
这里有一个很棒的小抄
为bootstrap4垂直中心的少数项目
D-flex用于伸缩规则
用于项目垂直方向的弯曲列
Align-items-center用于水平定心
垂直居中的justification -content-center
Style ='height: 300px;'必须为设定点,其中中心为calc或使用h-100类
<link href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css" rel="stylesheet"/> < span class=" font - family -宋体-宋体-宋体-宋体-宋体-宋体-宋体-宋体-宋体-宋体-宋体-宋体-宋体" style=" 身高:300 px; " > <div class="p-2 bg-primary">Flex item</div> <div class="p-2 bg-primary">Flex item</div> <div class="p-2 bg-primary">Flex item</div> < / div >
在Bootstrap 4中,你可以使用基于flex的HTML类d-flex、justify-content-center和align-items-center:
<link href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css" rel="stylesheet"/> <div class="d-flex align-items-center"> <button type="submit" class="btn btn-primary">创建</button> < / div >
来源:Bootstrap 4.1
推荐文章
- CSS:控制项目符号和<li>之间的空格
- 调试打印样式表的建议?
- 如何以编程方式触发引导模式?
- 为什么我的CSS3媒体查询不能在移动设备上工作?
- 下一个元素的CSS选择器语法是什么?
- 是否有'box-shadow-color'属性?
- 在jQuery中的CSS类更改上触发事件
- 我如何用CSS跨浏览器绘制垂直文本?
- 如何获得box-shadow在左侧和右侧
- 如何使用Twitter的Bootstrap内联显示列表
- 相对定位一个元素,而不占用文档流中的空间
- 禁用身体滚动
- 使用jQuery动画addClass/removeClass
- 在一个CSS宽度的小数点后的位置是尊重?
- 检测输入是否有文本在它使用CSS -在一个页面上,我正在访问和不控制?