不使用 float,实现两 div 水平布局且左宽右窄的方法及注意事项
在不使用`float`的情况下,有几种方法可以让两个`div`水平布局,并且让左边的`div`更宽。 方法一:使用`display: flex` ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <style> /* 父容器使用flex布局 */ .parent { display: flex; } /* 左边的div设置更宽的宽度 */ .left { width: 70%; background-color: lightblue; } /* 右边的div设置较窄的宽度 */ .right { width: 30%; background-color: lightgreen; } </style> </head> <body> <!-- 父容器 --> <div class="parent"> <!-- 左边的div --> <div class="left">左边的div更宽</div> <!-- 右边的div --> <div class="right">右边的div较窄</div> </div> </body> </html> ``` 代码解释: - `.parent`类设置`display: flex`,使其成为一个弹性容器,子元素会水平排列。 - `.left`类设置宽度为`70%`,`.right`类设置宽度为`30%`,从而让左边的`div`更宽。 方法二:使用`display: inline-block` ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <style> /* 父容器设置字体大小为0,避免inline-block元素之间的间隙 */ .parent { font-size: 0; } /* 左边的div设置更宽的宽度,同时设置为inline-block */ .left { display: inline-block; width: 70%; background-color: lightblue; font-size: 16px; } /* 右边的div设置较窄的宽度,同时设置为inline-block */ .right { display: inline-block; width: 30%; background-color: lightgreen; font-size: 16px; } </style> </head> <body> <!-- 父容器 --> <div class="parent"> <!-- 左边的div --> <div class="left">左边的div更宽</div> <!-- 右边的div --> <div class="right">右边的div较窄</div> </div> </body> </html> ``` 代码解释: - `.parent`类设置`font-size: 0`,是为了消除`inline-block`元素之间的间隙。 - `.left`和`.right`类设置`display: inline-block`,让两个`div`水平排列,同时分别设置不同的宽度。 我在以往的开发过程中,碰到过以下几点需要格外小心处理的地方: 1. 使用`flex`布局时,要注意浏览器的兼容性,特别是一些较旧的浏览器可能不支持某些`flex`属性。 2. 使用`inline-block`布局时,要注意元素之间的间隙问题,通常可以通过设置父元素的`font-size: 0`来解决,但要记得在子元素中重新设置字体大小。 3. 在设置宽度时,要考虑到元素的内边距、边框等因素,避免出现宽度超出预期的情况。 ######[AI写代码神器 | 855点数解答 | 2025-09-05 11:38:37]
- 揭秘 Python:网页表单自动化定位与等待操作代码解析(字节豆包 | 361点数解答 | 2024-11-11 21:56:42)330
- C 语言:从键盘输入半径和高,精准计算圆柱体表面积与体积!(字节豆包 | 248点数解答 | 2024-12-15 23:04:16)326
- C语言实现:精确计算两数和与差,避开指针陷阱!(字节豆包 | 128点数解答 | 2024-12-01 21:36:04)281
- Layui框架微信群组信息管理HTML模板:代码分析、优化建议与注意要点(DeepSeek | 644点数解答 | 2025-03-11 15:42:55)247
- App.vue 中头部代码结构与样式剖析(字节豆包 | 31点数解答 | 2025-05-14 09:58:18)258
- 巧用函数:求解 2 - 10 行矩阵不靠边元素之和(字节豆包 | 266点数解答 | 2025-12-10 19:43:19)59
- 巧用函数:求成都信息工程大学题目中矩阵不靠边元素之和 (字节豆包 | 197点数解答 | 2025-12-10 22:26:39)60
- C语言:自定义函数实现矩阵不靠边元素求和,行值动态输入(字节豆包 | 195点数解答 | 2025-12-10 23:11:47)84
- CSS技巧:鼠标移入a标签自动隐藏指定div(阿里通义 | 181点数解答 | 2023-10-26 09:52:31)401
- 优化用户登录代码:输入验证、按钮禁用与样式优化全解析(字节豆包 | 1402点数解答 | 2025-03-18 21:31:12)196
- HTML 代码里藏着的“一起睡觉的幸福”:超链接、图像与 div 的奇妙组合 (阿里通义 | 182点数解答 | 2023-10-26 09:46:09)352
- 手把手教你实现完整品牌列表案例:含 HTML、CSS 与 JS 代码(阿里通义 | 796点数解答 | 2024-11-18 20:40:15)294