当前位置: 首页 > news >正文

Flexbox 与定位结合-实现更复杂布局

1️⃣ 基本思路

  • Flexbox:主要用来 控制子元素的排列、分布、对齐(一维布局,水平或垂直)。

  • 定位(relative/absolute/sticky/fixed):用来 精确放置元素,脱离文档流或相对自身位置微调。

组合使用的核心:

Flex 布局负责整体排列,定位负责局部精细控制。

2️⃣ 常见组合场景

场景一:Flex + 相对定位(relative)

Flex 排列子元素

使用 position: relative; top/left 微调单个元素位置

.container {display: flex;justify-content: space-between;align-items: center;height: 100px;background: lightgray;
}.item {position: relative;top: 10px; /* 微调 */
}

✅ 应用:导航栏文字微调、按钮错位效果。

场景二:Flex + 绝对定位(absolute)

父容器设置 position: relative

子元素脱离文档流,用 absolute 精确定位

.nav {display: flex;justify-content: space-between;position: relative; /* 定位上下文 */height: 60px;background: lightblue;
}.badge {position: absolute;top: 0;right: 0;width: 20px;height: 20px;background: red;border-radius: 50%;text-align: center;color: #fff;font-size: 12px;
}

✅ 应用:Flex 控制菜单项排列,badge 精确放在角落。

场景三:Flex + Sticky(粘性定位)

Flex 控制排列

Sticky 实现滚动“吸顶”

.header {display: flex;justify-content: space-between;position: sticky;top: 0;background: white;padding: 10px;z-index: 10;
}

✅ 应用:移动端顶部导航栏随页面滚动吸附。

场景四:Flex + 多个绝对定位元素叠加

<div class="card"><img class="main-img" src="..." /><div class="overlay">New</div>
</div>.card {display: flex;justify-content: center;align-items: center;position: relative;width: 200px;height: 200px;
}.overlay {position: absolute;top: 10px;right: 10px;background: red;color: white;padding: 2px 5px;
}

✅ 应用:商品卡片、封面图角标。

3️⃣ 总结技巧

1、Flex 负责整体结构

  • 排列、对齐、间距

  • 可用 justify-content、align-items、flex-wrap 控制布局

2、定位负责局部精细控制

  • 微调单个元素(relative)

  • 精确覆盖 / 叠加(absolute)

  • 滚动吸附(sticky / fixed)

3、常用组合模式

  • 模式 功能
    Flex + relative 整体排列 + 元素微调
    Flex + absolute 整体排列 + 元素角标、叠层
    Flex + sticky/fixed 排列 + 吸附或浮动
    Flex + z-index + absolute 叠加层次管理

4、 经验技巧:

移动端 H5 页面常用 Flex + relative/absolute

http://www.dtcms.com/a/524462.html

相关文章:

  • 基于随机森林算法的Boss直聘数据分析及可视化-hadoop+django+spider
  • 最适合seo的网站源码专门做网页的网站
  • 企业微信机器人配置webhook自动推送错误订单信息
  • Web3 前端与合约交互
  • 基于window/ubuntu安装rknn-toolkit2【docker】
  • Mac安装配置MySQL
  • JumpServer堡垒机的安装部署
  • Harmony鸿蒙开发0基础入门到精通Day05--JavaScript篇
  • 福州医疗网站建设电商平台管理系统
  • 【乐鑫】乐鑫平台库文件生成方法
  • 文件IO操作
  • GStreamer视频编码
  • 【Go】--闭包
  • 正规网店代运营公司seo难不难
  • 【Dataset】如何高效处理海量数据并从中智能筛选出有代表性的样本?
  • 攻防世界-Web-Confusion1
  • python:怎样用 Django 开发电子商务程序
  • 【u-boot】u-boot驱动模型-struct uclass_driver
  • 昌吉网站建设公司怎么用php安装wordpress
  • 山西网站建设营销什么价格html模板在哪找
  • MATLAB 实现基于短时傅里叶变换 (STFT) 的音频信号时频分析与可视化
  • 第十章-Tomcat性能测试与实战案例
  • 1.Linux初识
  • 如何在亚马逊做公司网站wordpress文档chm
  • 免费中英文网站源码想做个网站都需要什么
  • 【小程序】指定元素滚动到中间
  • 百度PaddleOCR-VL:基于0.9B超紧凑视觉语言模型,支持109种语言,性能超越GPT-4o等大模型
  • (论文速读)InteractVLM: 基于2D基础模型的3D交互推理
  • 网络基础知识简易急速理解---OSPF开放式最短路径优先协议
  • VTK入门:vtkImageData——3D体素/2D像素的“规则收纳盒”