flex 的高阶玩法,你都get了吗?(记得收藏)

简介: flex 的高阶玩法,你都get了吗?(记得收藏)

先上效果


Flexbox的基本概念

容器和项目

Flexbox布局主要涉及两种类型的元素:容器(flex container)和项目(flex items)。

  • 容器:使用display: flexdisplay: inline-flex将元素定义为Flex容器。
  • 项目:容器内的直接子元素自动成为Flex项目。

主要属性

  1. Flex容器属性
  1. flex-direction:定义主轴方向(如rowcolumn)。
  2. justify-content:沿主轴对齐项目(如flex-startcenterspace-between)。
  3. align-items:沿交叉轴对齐项目(如stretchcenter)。
  4. flex-wrap:定义项目是否换行(如nowrapwrap)。
  1. Flex项目属性
  1. flex-grow:定义项目的放大比例。
  2. flex-shrink:定义项目的缩小比例。
  3. flex-basis:定义项目在分配多余空间之前的默认大小。
  4. flexflex-growflex-shrinkflex-basis的简写。


实践:制作一个响应式导航栏

<nav class="navbar">
        <a href="#" class="nav-link">Home</a>
        <a href="#" class="nav-link">About</a>
        <a href="#" class="nav-link">Services</a>
        <a href="#" class="nav-link">Contact</a>
    </nav>
body {
    margin: 0;
    font-family: Arial, sans-serif;
}
.navbar {
    display: flex;
    justify-content: space-around;
    align-items: center;
    background-color: #333;
    padding: 10px 0;
}
.nav-link {
    color: white;
    text-decoration: none;
    padding: 10px 20px;
    transition: background-color 0.3s ease, color 0.3s ease, transform 0.3s ease, border-bottom 0.3s ease; /* Added transition for smooth effects */
    border-bottom: 3px solid transparent; /* Initial border color */
}
.nav-link:hover {
    background-color: #555;
    color: #ff7e5f; /* Change text color on hover */
    transform: scale(1.1); /* Scale the link to create a pop effect */
    border-bottom: 3px solid #ff7e5f; /* Border appears on hover */
}


总结

通过在导航栏中加入简单的动画效果,我们不仅增强了用户的交互体验,也使得界面看起来更加现代和吸引人。这些动画效果简单易实现,却极大地提升了界面的吸引力和专业感。

相关文章
|
内存技术 .NET 开发框架
Flash/Flex学习笔记(4):如何打开网页及Get/Post数据
flash终究只是客户端技术,所以很多时候还是需要与服务端技术(比如asp,asp.net,jsp,php之类)进行数据交互的,下面的代码演示了如何在flash中打开网页,以及用GET/POST二种方式向服务端发送数据//按下按钮,打开网页 btnOpen.
916 0
flex布局属性简介
flex布局属性简介
|
6天前
|
弹性计算 前端开发 容器
【前端web入门第六天】02 flex布局
Flex布局是一种现代CSS布局模式,通过给父元素设置`display: flex`,其子元素可自动挤压或拉伸。它包含弹性容器和弹性盒子,主轴默认为水平方向,侧轴为垂直方向。主轴对齐方式由`justify-content`属性控制,侧轴对齐方式包括`align-items`(针对所有子元素)和`align-self`(针对单个子元素)。修改主轴方向使用`flex-direction`属性,`flex`属性用于控制子元素在主轴上的伸缩比例。此外,`flex-wrap`属性允许子元素换行,而`align-content`属性则定义多行对齐方式。
|
1月前
|
前端开发
FLex布局详解
Flex布局通过`flex-direction`定义主轴方向,包括横向`row`、反向横向`row-reverse`、纵向`column`及反向纵向`column-reverse`。`justify-content`控制主轴上子元素的排列,如起始端`flex-start`、末端`flex-end`、居中`center`、等间距`space-around`或两端对齐`space-between`。在Y轴上设置这些同样有效。`flex-wrap: wrap`使子元素在需要时换行。`align-items: center`实现侧轴(交叉轴)上的居中对齐
46 1
FLex布局详解
|
20天前
|
JavaScript
Vue3弹性布局(Flex)
这是一个基于 Vue 的弹性布局组件库,提供了丰富的参数配置,如宽度、方向、换行等,支持自定义对齐方式和间隙设置。在线预览展示了不同布局效果,包括单选、按钮和滑动输入条等组件的使用示例。
Vue3弹性布局(Flex)
|
28天前
|
前端开发 容器
掌握弹性盒子布局(Flex):打造灵活的网页布局
掌握弹性盒子布局(Flex):打造灵活的网页布局
|
1月前
|
容器
|
1月前
|
前端开发 JavaScript API
如何在 Angular 中使用 Flex 布局
如何在 Angular 中使用 Flex 布局
28 0
|
2月前
|
编解码 前端开发 容器
CSS Flex布局实战案例:构建响应式卡片组件
【7月更文挑战第17天】通过上述步骤,我们成功地使用CSS Flex布局构建了一个响应式的卡片组件。Flexbox不仅简化了布局代码,还让我们能够轻松实现复杂的布局效果,如响应式设计。在实战中,掌握Flexbox将大大提高前端开发的效率和网页布局的质量。希望这个案例能够帮助你更好地理解和应用Flexbox布局。
|
2月前
|
前端开发
css的flex布局中使用margin:auto智能分配剩余空间
css的flex布局中使用margin:auto智能分配剩余空间
35 1