iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > node.js >web开发中如何实现水平垂直居中与flexbox布局
  • 704
分享到

web开发中如何实现水平垂直居中与flexbox布局

2024-04-02 19:04:59 704人浏览 独家记忆
摘要

这篇文章主要介绍了web开发中如何实现水平垂直居中与flexbox布局 ,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。行内元素的水平居中要实

这篇文章主要介绍了web开发中如何实现水平垂直居中与flexbox布局 ,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

行内元素的水平居中

要实现行内元素(<span>、<a等)的水平居中,只需把行内元素包裹在块级父层元素(<div>、<li>、<p>等)中,并且在父层元素CSS设置如下:

  #container{
        text-align:center;
    }

并且适用于文字,链接,及其inline或者inline-block、inline-table和inline-flex。

web开发中如何实现水平垂直居中与flexbox布局

块状元素的水平居中

要实现块状元素(display:block)的水平居中,我们只需要将它的左右外边距margin-left和margin-right设置为auto,即可实现块状元素的居中,要水平居中的块状元素CSS设置如下:

#center{
    margin:0 auto;
}

web开发中如何实现水平垂直居中与flexbox布局

多个块状元素的水平居中

要实现多个水平排列的块状元素的水平居中,传统的方法是将要水平排列的块状元素设为display:inline-block,然后在父级元素上设置text-align:center,达到与上面的行内元素的水平居中一样的效果。

#container{
    text-align:center;
}

#center{
    display:inline-block;
}

web开发中如何实现水平垂直居中与flexbox布局

使用flexbox实现多个块状元素的水平居中

在使用之前,首先介绍一下flexbox。

Flexbox布局(Flexible Box)模块旨在提供一个更加有效的方式制定、调整和分布一个容器里的项目布局,即使他们的大小是未知或者是动态的。是css3 中一个新的布局模式,为了现代网络中更为复杂的网页需求而设计。

Flexbox 已经被浏览器快速支持。Chrome 22+, Opera 12.1+, 和 Opera Mobile 12.1+ ,firefox18+已经支持了本文中所描述的 Flexbox。

学会使用flexbox

要为元素设置flexbox布局,只需将display属性值设置为flex。

#container {
     display: flex;
 }

flexbox的默认为一个块级元素,如果需要定义为一个行内级的元素,同理:

#container {
     display: inline-flex;
}

flexbox由伸缩容器和伸缩项目组成。通过设置元素的display属性为flex或者inline-flex可以得到一个伸缩容器。设置为flex的容器被渲染为一个块级元素,而设置为inline-flex的容器则渲染为一个行内元素。而每一个被设置为flex的容器,它的内部元素都将变成一个flex项目,即是一个伸缩项目。简单的说,flex 定义了伸缩容器内伸缩项目该如何布局。

回到正题,利用flexbox实现多块状元素的水平居中,只需要将父级容器的Css设置如下:

#container{
     justify-content:center;
    display:flex;
}

web开发中如何实现水平垂直居中与flexbox布局

已知高度宽度元素的水平垂直居中

法一.

绝对定位与负边距实现。

利用绝对定位,将元素的top和left属性都设为50%,再利用margin边距,将元素回拉它本身高宽的一半,实现垂直居中。核心CSS代码如下:

#container{
    position:relative;
}

#center{
    width:100px;
    height:100px;
    position:absolute;
    top:50%;
    left:50%;
    margin:-50px 0 0 -50px;
}

web开发中如何实现水平垂直居中与flexbox布局

法二.

绝对定位与margin。

这种方法也是利用绝对定位与margin,但是无需知道被垂直居中元素的高和宽。核心代码如下:

#container{
    position:relative;
}

#center{
    position:absolute;
    margin:auto;
    top:0;
    bottom:0;
    left:0;
    right:0;
}

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

法一. 当要被居中的元素是inline或者inline-block元素

当要被居中的元素是inline或者inline-block的时候,可以巧妙的将父级容器设置为display:table-cell,配合text-align:center和vertical-align:middle即可以实现水平垂直居中。

核心代码如下:

#container{
    position:relative;
}

#center{
    position:absolute;
    margin:auto;
    top:0;
    bottom:0;
    left:0;
    right:0;
}

web开发中如何实现水平垂直居中与flexbox布局

法二. Css3显威力

利用Css3的transfORM,可以轻松的在未知元素的高宽的情况下实现元素的垂直居中。

核心代码如下:

#container{
    position:relative;
}

#center{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

web开发中如何实现水平垂直居中与flexbox布局

法三. flex布局轻松解决

使用flex布局,无需绝对定位等改变布局的操作,可以轻松实现元素的水平垂直居中。

核心代码如下:

#container{
    display:flex;
    justify-content:center;
    align-items: center;
}

#center{

}

web开发中如何实现水平垂直居中与flexbox布局

一些总结

CSS3的transform和flex固然好用,但在项目的实际运用中必须考虑兼容问题,大量的hack代码可能会导致得不偿失。

某些浏览器仍需使用前缀写法:

.flexboxtest{
   display: flex;
   display: -WEBkit-flex; //Safari仍旧需要使用特定的浏览器前缀
 }

文中介绍的flex用法只是一小部分,flex还有着其他强大的功能。

感谢你能够认真阅读完这篇文章,希望小编分享的“web开发中如何实现水平垂直居中与flexbox布局 ”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网node.js频道,更多相关知识等着你来学习!

--结束END--

本文标题: web开发中如何实现水平垂直居中与flexbox布局

本文链接: https://www.lsjlt.com/news/77371.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • web开发中如何实现水平垂直居中与flexbox布局
    这篇文章主要介绍了web开发中如何实现水平垂直居中与flexbox布局 ,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。行内元素的水平居中要实...
    99+
    2022-10-19
  • 用Flexbox制作CSS布局实现水平垂直居中
    本篇内容介绍了“用Flexbox制作CSS布局实现水平垂直居中”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成...
    99+
    2022-10-19
  • CSS3如何实现水平居中、垂直居中、水平垂直居中
    小编给大家分享一下CSS3如何实现水平居中、垂直居中、水平垂直居中,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!栗子1:从最简单的水平居中开始margin: 0 ...
    99+
    2023-06-08
  • Android应用借助LinearLayout实现垂直水平居中布局
    首先说的是LinearLayout布局下的居中一般是这样的: (注意:android:layout_width="fill_parent" android:layout_hei...
    99+
    2022-06-06
    布局 居中 Android
  • Android手机开发 使用线性布局和相对布局实现Button垂直水平居中
    居中呢,这里分两种不同布局方式的居中!分别是 LinearLayout 和RelativeLayout。 一、首先说的是LinearLayout布局下的居中: 注意:andro...
    99+
    2022-06-06
    button 布局 居中 线性 Android
  • web开发中如何实现绝对定位元素的水平垂直居中
    小编给大家分享一下web开发中如何实现绝对定位元素的水平垂直居中,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1.css实现居中...
    99+
    2022-10-19
  • CSS布局技巧:如何实现水平垂直居中的网页元素
    在网页设计和开发中,实现元素的水平垂直居中是经常会遇到的问题。无论是居中显示一张图片、一个文本框,还是整个页面的居中布局,正确的使用CSS布局技巧可以轻松实现这个效果。本文将介绍一些实现水平垂直居中的常用CSS方法,并提供具体的代码示例。一...
    99+
    2023-10-21
    水平居中 垂直居中 CSS布局
  • 如何使用CSS实现水平垂直居中
    小编给大家分享一下如何使用CSS实现水平垂直居中,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!     仅...
    99+
    2022-10-19
  • HTML中如何实现图片水平垂直居中
    小编给大家分享一下HTML中如何实现图片水平垂直居中,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Html代码 : 代码如下:<td align="...
    99+
    2023-06-08
  • HTML教程:如何使用Flexbox进行垂直居中布局
    引言:在网页设计中,布局是一项重要的技能。而垂直居中布局是其中一个常见的需求。许多开发者常常遇到的问题是如何通过HTML和CSS实现垂直居中布局。在本教程中,我们将介绍使用Flexbox来实现垂直居中布局的方法,并提供具体的代码示例。一、F...
    99+
    2023-10-21
    FLEXBOX HTML教程 垂直居中布局
  • css如何实现盒子的垂直水平居中
    这篇文章主要介绍css如何实现盒子的垂直水平居中,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!盒子的垂直水平居中  .outer{   width: 300px;   he...
    99+
    2022-10-19
  • css中如何实现文字的垂直水平居中
    这篇文章主要为大家展示了“css中如何实现文字的垂直水平居中”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“css中如何实现文字的垂直水平居中”这篇文章吧。&nb...
    99+
    2022-10-19
  • div内容水平居中与div内容垂直居中怎么实现
    这篇文章主要讲解了“div内容水平居中与div内容垂直居中怎么实现”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“div内容水平居中与div内容垂直居中怎么实...
    99+
    2022-10-19
  • DIV或者DIV的图片如何实现水平与垂直居中
    小编给大家分享一下DIV或者DIV的图片如何实现水平与垂直居中,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!<div class=“box”>   <img&n...
    99+
    2022-10-19
  • CSS如何通过计算实现水平垂直居中
    本篇内容主要讲解“CSS如何通过计算实现水平垂直居中”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“CSS如何通过计算实现水平垂直居中”吧! 1.子绝父相,直接...
    99+
    2022-10-19
  • CSS如何实现子元素div水平垂直居中
    本文将为大家详细介绍“CSS如何实现子元素div水平垂直居中”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“CSS如何实现子元素div水平垂直居中”能够给你意想不到的收获,请大家跟着小编的思路慢慢深入,具体内容...
    99+
    2023-06-08
  • css如何使用position实现图片水平垂直居中
    这篇文章主要为大家展示了“css如何使用position实现图片水平垂直居中”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“css如何使用position实现图片...
    99+
    2022-10-19
  • CSS如何实现不定宽高的垂直水平居中
    这篇文章主要为大家展示了“CSS如何实现不定宽高的垂直水平居中”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“CSS如何实现不定宽高的垂直水平居中”这篇文章吧。垂...
    99+
    2022-10-19
  • css中背景background如何实现图片水平垂直居中
    这篇文章将为大家详细讲解有关css中背景background如何实现图片水平垂直居中,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。背景background实现图片水平垂直...
    99+
    2022-10-19
  • CSS如何实现水平垂直居中的绝对定位居中技术
    本篇内容介绍了“CSS如何实现水平垂直居中的绝对定位居中技术”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作