当前位置:首页 > 技术分析 > 正文内容

CSS实现常见元素水平、垂直居中(css元素垂直居中的方法)

ruisui883个月前 (01-22)技术分析12

本文简单介绍如何通过CSS实现常见元素的水平、垂直居中。

水平居中

  • 行内元素

这种情况最简单,只需要将行内元素包括在一个display属性为block的父元素中,并且设置父元素text-align为居中即可

.border {
  width: 400px;
  line-height: 100px;
  border: 1px solid red;
  text-align: center;
}
<div class="border">
      <span>行内元素</span>
</div>
  • 块状元素

对块状元素设置相应的外边距即可,外边距左、右设置为auto。

.parent {
  width: 400px;
  height: 100px;
  border: 1px solid red;
}
.block-child {
  width: 100px;
  border: 2px solid black;
  margin: 10px auto;
  text-align: center;
}
<div class="parent">
      <div class="block-child">块状元素</div>
</div>


  • 多个块状元素①

传统方法,在父元素设置text-align:center; 然后将需要居中的块状元素的display设置为inline-block

.border {
  width: 400px;
  line-height: 100px;
  border: 1px solid red;
  text-align: center;
}
.inline-block {
  display: inline-block;
  border: 1px solid black;
}
 <div class="border">
      <div class="inline-block">块状元素1</div>
      <div class="inline-block">块状元素2</div>
      <div class="inline-block">块状元素3</div>
  </div>
  • 多个块状元素②

使用flex布局实现,将父元素display设置为flex,同时设置子元素对齐。

.parent-flex {
  width: 400px;
  border: 1px solid red;
  display: flex;
  justify-content: center;
}
<div class="parent-flex">
      <div style="border: 1px solid black;">块状元素1</div>
      <div style="border: 1px solid black;">块状元素2</div>
      <div style="border: 1px solid black;">块状元素3</div>
</div>

垂直居中

  • 单行行内元素

将行内元素的 line-height 属性与其父元素的 height 属性设置为相同值,比如都是40px。

  • 多行的行内元素

通过设置父元素display属性为table-cell,及其他相关属性解决。

.parent-table-cell {
  width: 400px;
  height: 100px;
  border: 1px solid red;
  display: table-cell;
  vertical-align: middle;
}
<div class="parent-table-cell">
      <span>行内元素1</span><br>
      <span>行内元素2</span><br>
      <span>行内元素3</span>
</div>
  • 已知高度的块状元素

结合元素的position及margin属性,通过定位设置居中,父元素position设置为relative

.item{
  top: 50%; // 顶部位置位于父元素的50%处
  margin-top: -50px;  // margin-top 值为自身高度的一半
  position: absolute; //position也可以是
}


注意:如果规定了 !DOCTYPE,则 Internet Explorer 8 (以及更高版本)支持display属性值 "inline-table"、"run-in"、"table"、"table-caption"、"table-cell"、"table-column"、"table-column-group"、"table-row"、"table-row-group"、以及 "inherit"。

喜欢就关注支持一下吧。[呲牙][呲牙]

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/466.html

分享给朋友:

“CSS实现常见元素水平、垂直居中(css元素垂直居中的方法)” 的相关文章

Win+Ubuntu缝合怪:第三方开发者推出“Wubuntu”Linux发行版

IT之家 2 月 26 日消息,一位第三方开发者推出了一款名为“Wubuntu”的缝合怪 Linux 发行版,系统本身基于 Ubuntu,但界面为微软 Windows 11 风格,甚至存在微软 Windows 徽标。据介绍,这款 Wubuntu 发行版旨在为习惯使用 Windows 11 的用户打造...

「干货」通俗易懂的Deno 入门教程

作者: semlinker转发链接:https://mp.weixin.qq.com/s/2eqRTsf_z7Bcs6dziXe73Q一、Deno 简介Deno 是一个 JavaScript/TypeScript 的运行时,默认使用安全环境执行代码,有着卓越的开发体验。Deno 含有以下功能亮点:默...

79.idea中git合并分支操作分享

文章目录前言1.fetch的操作2.合并最新代码到当前的开发分支3.解决冲突4.分支合并:5.完成代码合并总结前言git的操作在日产的工作中也非常重要,团队化的代码管理,每次如果代码被别人覆盖或者自己的代码不能提交到服务器那是灾难性的结果,本篇进行一篇分享来总结下idea中git的操作帮助java开...

Gitlab概览

Gitlab是开源的基于Git的仓库管理系统,也可以管理软件开发的整个生命周期,是项目管理和代码托管平台,支撑着整个DevOps的生命周期。Gitlab很容易选为GitHub,作为公司私有库管理的工具。我们可以用Gitlab Workflow来协同整个团队的软件开发管理过程。软件开发阶段Gitlab...

《暗黑破坏神 2:重制版》PC 版 2.3 版本发布,支持英伟达 DLSS

IT之家 12 月 3 日消息,暴雪为《暗黑破坏神 2:重制版》PC 版发布了更新 2.3 版本,添加了“离线难度缩放”滑块(玩家可以在单人游戏时增加挑战和奖励的级别)、多项辅助功能和用户界面改进,以及英伟达 DLSS 支持。玩法改进:玩家现在可以在离线游戏的选项菜单中使用“游戏难度等级”,它提供与...

数组、去重、排序、合并、过滤、删除

ES6数字去重 Array.from(new Set([1,2,3,3,4,4])) //[1,2,3,4] [...new Set([1,2,3,3,4,4])] //[1,2,3,4]2、ES6数字排序 [1,2,3,4].sort(); // [1, 2,3,4],默认是升序...