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

盒子模型导读

目标

能够准确阐述盒子模型的4个组成部分

能够利用边框复合写法给元素添加边框

能够计算盒子的实际大小

能够利用盒子模型布局模块案例

能够给盒子设置圆角边框

能够给盒子添加阴影

能够给文字添加阴影


盒子模型

1.1看透网页布局的本质

网页布局过程:

1.先准备好相关的网页元素,网页元素基本都是盒子Box

2.利用CSS设置好盒子样式,然后摆放到相应位置

3.往盒子里面装内容

网页布局的核心本质,就是利用CSS摆盒子。

1.2盒子模型组成

所谓盒子模型,就是把HTML页面中的布局元素看作是一个矩形的盒子,也就是盛装内容的容器。

CSS盒子模型本质是一个盒子,封装周围的HTML元素,它包括:边框、外边距、内边距和实际内容。

1.3 边框(border)

border可以设置元素的边框。边框有三部分组成:边框宽度(粗细)边框样式 边框颜色

语法:

border:border-width||border-style||border-color

属性作用
border-width定义边框粗细,单位是px
border-style边框样式 solide实线、dotted点线、dashed虚线线框
border-color边框颜色

CSS 边框属性允许你指定一个元素边框的样式和颜色。

边框描写:

border:1px,solid red;没有顺序

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>div {/* width: 300px;height: 200px;border-width: 5px;border-style: solid; *//* border-style: dotted;点线 *//* border-style: dashed;虚线边框 *//* border-color: pink; */width: 300px;height: 200px;;border: 1px,solid,pink;}</style>
</head>
<body><div></div>
</body>
</html>

border-top:1px solid red;/*只设定上边框,其余同理*/

请给一个200*200的盒子,设置上边框为红色,其余边框为蓝色,提示:一定注意边框的层叠性

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>div {/* width: 300px;height: 200px;border-width: 5px;border-style: solid; *//* border-style: dotted;点线 *//* border-style: dashed;虚线边框 *//* border-color: pink; *//* width: 300px;height: 200px;;border: 1px,solid,pink; */width: 200px;height: 200px;border: 1px solid blue;border-top:1px solid red;}</style>
</head>
<body><div></div>
</body>
</html>

 1.4 表格的细线边框

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>今日小说排行榜</title><style>table {width: 500px;height: 249px;}table,td,th {border: 1px solid pink;border-collapse: collapse;font-size: 14px;text-align: center;}</style>
</head><body><table align="center" cellspacing="0"><thead>
<tr><th>排名</th><th>关键词</th><th>趋势</th><th>进入搜索</th><th>最近七日</th><th>相关链接</th>
</tr></thead><tr><td>1</td><td>鬼吹灯</td><td>上升</td><td>456</td><td>123</td><td><a href="#">贴吧</a><a href="#">图片</a><a href="#">百度</a></td></tr><tr><td>1</td><td>鬼吹灯</td><td>上升</td><td>456</td><td>123</td><td><a href="#">贴吧</a><a href="#">图片</a><a href="#">百度</a></td></tr><tr><td>1</td><td>鬼吹灯</td><td>上升</td><td>456</td><td>123</td><td><a href="#">贴吧</a><a href="#">图片</a><a href="#">百度</a></td></tr><tr><td>1</td><td>鬼吹灯</td><td>上升</td><td>456</td><td>123</td><td><a href="#">贴吧</a><a href="#">图片</a><a href="#">百度</a></td></tr><tr><td>1</td><td>鬼吹灯</td><td>上升</td><td>456</td><td>123</td><td><a href="#">贴吧</a><a href="#">图片</a><a href="#">百度</a></td></tr><tr><td>1</td><td>鬼吹灯</td><td>上升</td><td>456</td><td>123</td><td><a href="#">贴吧</a><a href="#">图片</a><a href="#">百度</a></td></tr></table>
</body>
</html>

border-collapse:合并单元格

1.5 边框会影响盒子的实际大小

边框会额外增加盒子的实际大小,因此,我们7欧两种方案解决:

1.测量盒子大小的时候,不量边框

2.如果测量的时候包含了边框,则需要width/height减去边框宽度。

1.6 内边距

padding 属于用于设置内边距,即边框与内容之间的距离。

属性作用
padding-left左行内距
padding-right右行内距
padding-top上内边距
padding-bottom下内边距

padding属性(简写属性)可以有一到四个值。

值的个数表达意思
padding:5px;1个值,代表上下左右都有5像素内边距
padding:5px 10px2个值,代表上下内边距5px,左右内边距是10px
padding:5px 10px 20px3个值,代表上内边距5像素,左右内边距10像素,下内边距20像素
padding:5px 10px 20px 30px4个值,上5 右10 下20 左30 顺时针
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>div {width: 200px;height: 200px;background-color: pink;/* padding: 5px; *//* 内边距复合写法(简写) *//* padding: 5px 10px; *//* padding: 5px 10px 20px; */padding: 5px 10px 20px 30px;}</style>
</head>
<body><div>盒子内容是content盒子内容是content盒子内容是content盒子内容是content</div>
</body>
</html>

当我们给盒子指定padding值后,发生了2件事情:

1.内容和边框有了距离,添加了内边距。

2.padding影响了盒子实际大小。

也就是说,如果盒子已经有了宽度和高度,此时再指定内边框,会撑大盒子。

解决方案:

如果保证盒子跟效果图大小保持一致,则让width/height减去多出来的内边距大小即可。

综合案例:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>新浪导航</title><style>.nav{border-top: 3px solid #ff8500;border-bottom: 1px solid #edeef0;background-color: #fcfcfc;height: 41px;}.nav a{display: inline-block;line-height: 41px;padding: 0 20px;font-size: 12px;color: #4c4c4c;text-decoration: none;}a:hover {background-color: #eee;color: orange;}</style>
</head>
<body><div class="nav"><a href="#">新浪导航</a><a href="#">手机新浪网</a><a href="#">移动客户端</a><a href="#">微博</a><a href="#">三个字</a></div>
</body>
</html>

小米侧边栏

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.nav{width: 200px;height: 40px;font-size: 14px;}.nav a{display: block;background-color: #55585a;color: #fff;text-decoration: none;line-height: 40px;padding-left: 30px;}a:hover {background-color: #ff6700;}</style>
</head>
<body><div class="nav"><a href="#">手机 电话卡</a><a href="#">电视 盒子</a><a href="#">笔记本 平板</a><a href="#">出行 穿戴</a><a href="#">智能 路由器</a><a href="#">健康 儿童</a><a href="#">耳机 音响</a></div>
</body>
</html>

1.7 外边距(margin)

margin 属性用于设置外边距,即控制盒子和盒子之间的距离。

属性作用
margin-left左外边距
margin-right右外边距
margin-top上外边距
margin-bottom下外边距

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>div {background-color: pink;width: 200px;height: 200px;}.one {/* margin-bottom: 20px; */margin: 20px 30px 20px 50px;}</style>
</head>
<body><div class="one">1</div><div class="two">2</div>
</body>
</html>


文章转载自:

http://SdngULN7.ftrtc.cn
http://ewkfzWRj.ftrtc.cn
http://dx2tflmU.ftrtc.cn
http://3TycUXW6.ftrtc.cn
http://0ftopk02.ftrtc.cn
http://DNgoZKtF.ftrtc.cn
http://yvYUB4bT.ftrtc.cn
http://SDooSWgp.ftrtc.cn
http://wKL3nazI.ftrtc.cn
http://oVJnPx7c.ftrtc.cn
http://tBTvKXh1.ftrtc.cn
http://eKFrOhA8.ftrtc.cn
http://7Hu0TX3Q.ftrtc.cn
http://5Z3gmhzL.ftrtc.cn
http://DzHDS6yG.ftrtc.cn
http://bb8ch6ba.ftrtc.cn
http://SprFvO49.ftrtc.cn
http://RO9QogNH.ftrtc.cn
http://Qrnci8iM.ftrtc.cn
http://dErjcRhw.ftrtc.cn
http://eah7QmMT.ftrtc.cn
http://5YQCIsX9.ftrtc.cn
http://GGPQGyH1.ftrtc.cn
http://J8IE30mw.ftrtc.cn
http://CVjhNKnH.ftrtc.cn
http://tCzSWpdP.ftrtc.cn
http://UsmMSjv8.ftrtc.cn
http://FfpjXvzW.ftrtc.cn
http://IgbGFP9K.ftrtc.cn
http://g1dgCqQi.ftrtc.cn
http://www.dtcms.com/a/381234.html

相关文章:

  • 《动物营养与饲料学》复习题五套(含答案)
  • 如何选择?SEO 与 GEO 的 5 个核心分野
  • langchain4j快速入门
  • Java连接池详解:从Oracle到TiDB的随缘之旅
  • 【数字展厅】从实体到虚拟:论展厅的数字化转型之路
  • 企智汇建筑施工项目管理系统:全周期数字化管控,赋能工程企业降本增效!​建筑工程项目管理软件!建筑工程项目管理系统!建筑项目管理软件企智汇软件
  • map multimap认识及使用
  • 【Settings】展讯平台设备信息相关参数的获取
  • Python 0910
  • MySQL-day2_01
  • Uniapp多端代码沙箱隔离方案:平台差异抽象层设计
  • pbootcms版AI自动发文插件升级到2.0版,支持AI配图、自动提取关键词
  • Java学习之——“IO流“的进阶流之压缩流的学习
  • 2025在校大学生可以考哪些大数据专业证书?
  • cte功能oracle与pg执行模式对比
  • 铁路轨道扣件破损视觉检测方案
  • 解释一下C++中内存屏障和它的作用——多线程编程
  • 文献速递 | 徐国良/邵振/陈辉合作揭示DNA甲基化抑制性别决定区的减数分裂重组
  • 如何让 RAG 的检索精准度提升 80%?
  • 镀锌板数控矫平机科普
  • 日志的查看与管理
  • Redis + MySQL 的缓存一致性
  • 2025最新中文字体下载免费网站整理,商用无版权风险!
  • Flutter 数据存储的四种核心方式 · 从 SharedPreferences 到 SQLite:Flutter 数据持久化终极整理
  • 容器问答题下
  • 题目:盛水最多的容器(medium)
  • win7 R 4.4.0和RStudio1.25的版本兼容性以及系统区域设置有关 导致Plots绘图面板被禁用,但是单独页面显示
  • 中级统计师-统计法规-第六章 统计行政许可制度
  • Coze源码分析-资源库-创建知识库-前端源码-核心逻辑与接口
  • MySQL数据库-03(字段的约束)