5、CSS弹性盒子实现导航布局

简介: 5、CSS弹性盒子实现导航布局

1、前言


       之前我们实现导航布局,可能需要用到float浮动的方法来设置导航条。今天我们学到了Flex弹性盒,那我们就用弹性盒的方式来实现一下导航条的布局


2、效果展示


1.gif

导航块宽度等比例分配大小


3、实现代码


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        *{
            padding: 0;
            margin: 0;
            list-style: none;
            text-decoration: none;
        }
        .divWrap{
            width: 1210px;
            height: 48px;
            background-color: #E8E7E3;
            margin: 60px auto;
        }
        ul{
            height: 48px;
            line-height: 48px;
            display: flex;
        }
        ul>li{
            /* 当把ul设置为弹性容器的时候,子元素li则为弹性元素 */
            text-align: center;
            /* flex-grow 指定弹性元素的收缩系数 */
            flex-grow: 1;
            color: #777777;
            font-family: "SF Pro SC","SF Pro Text","SF Pro Icons","PingFang SC", Verdana, Arial, '微软雅黑','宋体';
            font-size: 14px;
        }
        ul>li:hover{
            background-color: #3F3F3F;
            color: white;
        }
    </style>
</head>
<body>
    <div class="divWrap">
        <ul>
            <li>HTML/CSS</li>
            <li>Browser Side</li>
            <li>Server Side</li>
            <li>Programming</li>
            <li>XML</li>
            <li>Web Building</li>
            <li>Reference</li>
        </ul>
    </div>
</body>
</html>


4、细节说明


用display: flex;把ul设置为弹性容器,效果如下:

3.png

再用flex-grow: 1;把li设置为弹性元素,效果如下:


2.png


两个属性的设置,就可以实现导航条的整体布局,比我们之前用的float布局方便很多,但是兼容性不flex及float,对于移动端的布局可以用flex布局。


相关文章
|
14天前
|
前端开发 容器
css布局-弹性布局学习笔记
这篇文章是关于CSS弹性布局的学习笔记,详细介绍了flex容器和元素的相关属性,包括flex-direction、flex-wrap、flex-flow、justify-content、align-items、align-content以及order、flex-grow、flex-shrink、flex-basis、flex和align-self等,解释了这些属性在弹性盒子布局中的作用和用法。
|
2天前
|
前端开发 容器
CSS弹性盒子知识点
CSS弹性盒子知识点
|
14天前
|
JavaScript 前端开发
网页前端课程设计-【模仿】香港中文大学官网,轮播图及div+css布局,js的dom操作
这篇文章介绍了如何模仿香港中文大学官网进行网页前端课程设计,包括使用div+css布局、js的DOM操作以及实现轮播图等技术细节。
|
2月前
|
前端开发 安全 容器
CSS如何优雅实现卡片多行排列布局?
【8月更文挑战第24天】CSS如何优雅实现卡片多行排列布局?
47 3
|
2月前
|
前端开发 开发者 容器
探索现代Web开发中的CSS Grid布局技术
【8月更文挑战第29天】在数字时代的浪潮中,网页设计不断进化以适应日新月异的用户需求。CSS Grid布局技术作为一项革新性的前端工具,为设计师和开发者提供了前所未有的布局能力。本文旨在通过深入浅出的方式介绍CSS Grid的核心概念、基本用法以及在实际项目中的应用,帮助读者快速掌握这一强大的网页布局工具。
43 3
|
2月前
|
前端开发 开发者 容器
【Web布局的革命】探索CSS Grid栅格系统,打造未来网页设计!
【8月更文挑战第25天】在网页设计领域,布局至关重要。传统的布局方法难以满足复杂需求,CSS Grid 栅格系统因此诞生。它是一种二维布局模式,能直接控制行和列,简化复杂网格的设计。通过定义 `display: grid;` 创建网格容器,并利用 `grid-template-columns` 和 `grid-template-rows` 设置行列尺寸,轻松实现响应式布局。此外,CSS Grid 支持高级功能,如网格区域划分和对齐设置,极大提升了布局的灵活性和创意空间。随着浏览器兼容性的增强,CSS Grid 必将成为未来网页设计的关键技术之一。
53 1
|
前端开发 容器
CSS 的布局 盒子
CSS 的布局 盒子
125 0
CSS 的布局 盒子
|
Web App开发 前端开发 测试技术
CSS布局之-盒子(Box)
一、 前言 盒子(一个块)是CSS布局中最基础的东西,如果你没完全搞清楚盒子是怎么回事,那么你在布局中将会很纠结,今天把它搞明白吧。文章中有误的地方,麻烦您指正。 二、 什么是CSS盒子呢? 现在很多的书籍和教程都在说“DIV+CSS”,首先,我不太喜欢这个名字,原因很简单,难道写页面只用到DIV吗?为什么不说HTML+CSS呢,这样不是更好?所以,任何事情都不能走极端,(DIV用多了也不好)。
1346 0
|
2月前
|
前端开发
2s 利用 HTML+css动画实现企业官网效果
2s 利用 HTML+css动画实现企业官网效果
HTML+CSS 实现通用的企业官网页面(记得收藏)
HTML+CSS 实现通用的企业官网页面(记得收藏)