前端学习之布局

浮动和清除浮动解决方案

HTML结构示例

html 复制代码
<div class="wrap">
  <div class="left"></div>
  <div class="right"></div>
</div>

CSS实现方法

css 复制代码
.left {
  float: left;
  width: 50%;
}

.right {
  float: left;
  width: 50%;
}

.wrap::after {
  content: "";
  display: table;
  clear: both;
}

关键点说明

  • 浮动元素需要设置宽度,否则可能出现布局异常
  • ::after伪元素清除浮动是现代最推荐的方式
  • 清除浮动的原理是在容器末尾创建不可见元素来阻断浮动

固定定位解决方案

CSS完整代码

css 复制代码
.box {
  width: 100px;
  height: 100px;
  position: fixed;
  top: 0;
  left: 0;
}

特性说明

  • fixed定位基于视口而非文档流
  • 需要显式指定topleft值确定位置
  • 固定定位元素会脱离常规文档流

学习要点对比

浮动定位特点

  • 最初设计用于文字环绕效果
  • 浮动元素会脱离普通流但保留部分流动性
  • 需要处理父容器高度塌陷问题

固定定位特点

  • 位置相对于浏览器窗口保持不变
  • 不随页面滚动而移动
  • 常用于导航栏、悬浮按钮等场景

实际应用建议

  • 现代布局推荐优先考虑flexbox/grid
  • 浮动布局仍适用于传统浏览器支持需求
  • 固定定位要注意移动设备视口差异
相关推荐
G_G#7 分钟前
纯前端js插件实现同一浏览器控制只允许打开一个标签,处理session变更问题
前端·javascript·浏览器标签页通信·只允许一个标签页
@大迁世界22 分钟前
TypeScript 的本质并非类型,而是信任
开发语言·前端·javascript·typescript·ecmascript
GIS之路31 分钟前
GDAL 实现矢量裁剪
前端·python·信息可视化
是一个Bug35 分钟前
后端开发者视角的前端开发面试题清单(50道)
前端
Amumu1213836 分钟前
React面向组件编程
开发语言·前端·javascript
学历真的很重要37 分钟前
LangChain V1.0 Context Engineering(上下文工程)详细指南
人工智能·后端·学习·语言模型·面试·职场和发展·langchain
持续升级打怪中1 小时前
Vue3 中虚拟滚动与分页加载的实现原理与实践
前端·性能优化
GIS之路1 小时前
GDAL 实现矢量合并
前端
hxjhnct1 小时前
React useContext的缺陷
前端·react.js·前端框架
前端 贾公子1 小时前
从入门到实践:前端 Monorepo 工程化实战(4)
前端