本篇文章给大家带来的内容是关于盒子模型之CSS3学习之边框(Border) ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
盒子模型之border
边框相关属性
border-width 控制边框的大小 用长度赋值
border-style 控制边框的样式 none 没有边框 solid 实线 dotted 点线 dashed 虚线 double 双线条
border-color 控制边框的颜色 四种颜色表示法
border-top 控制上边框的样式
border-right 控制右边框的样式
border-bottom 控制下边框的样式
border-left 控制左边框的样式
其实四条边也是复合属性:
border-top可以分成这么几个属性:border-top-color border-top-width border-top-style (剩下三条边以此类推)
边框连写
理论上:没有顺序,皆可省略
案例:表格边框、四彩盒子、表单边框
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style> table { width: 800px; height: 300px; border: 1px solid #000; border-collapse: collapse;/*去掉边框:细线*/ } th,td { border: 1px solid #000; } </style></head><body> <table> <caption><h3>今日小说排行榜</h3></caption> <thead> <tr> <th>排名</th> <th>关键词</th> <th>趋势</th> <th>今日搜索</th> <th>最近七日</th> <th>相关链接</th> </tr> </thead> <tbody> <tr > <td >1</td> <td >鬼吹灯</td> <td ><img src="img/up.jpg" width="13" height="11" /></td> <td >65589</td> <td >45</td> <td ><a href="#">贴吧</a> <a href="#">图片</a> <a href="#">百科</a></td> </tr> <tr> <td>2</td> <td>盗墓笔记</td> <td><img src="img/down.jpg" width="13" height="11" /></td> <td>1</td> <td>456</td> <td><a href="#">贴吧</a> <a href="#">图片</a> <a href="#">百科</a></td> </tr> </tbody></table></body></html>
Document
<p></p></body></html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title><style type="text/css"> input{ width:150px; height:18px; outline-style:none; /*取消蓝色边框*/ }.username{ border:1px dashed #ccc; background-color:#E7EEFE; color:blue; }.username:focus{ /*获得焦点的状态*/ border:1px dashed pink; background-color:#FFF7FB; color:pink; }.email{ border:0 none; border-bottom:1px dashed red; }.search{ border:1px solid #ccc; color:#ccc; background:url(search.png) no-repeat right center; }</style></head><body>用户名: <input type="text" class="username" /><br /><br />邮 箱: <input type="text" class="email"/><br /><br /><label for="txt">搜索一下</label>: <input type="text" id="txt" class="search" value="请输入..." /></body></html>
盒子模型之padding
内边距:控制内容和边框之间的距离
padding属性和padding连写
padding-top 上内边距 padding-right 右内边距 padding-bottom 下内边距 padding-left 左内边距
四种连写
1 只写一个值 padding : 10px; 代表四个方向都是第一个数字
2 写两个 padding : 10px 20px; 表示:上下内边距等于第一个数字,左右内边距等于第二个数字
3 写三个 padding: 10px 20px 30px; 表示:上内边距=第一个数字,左右内边距等于第二个数字,下内边距等于第三个数字
4 写四个 padding: 10px 20px 30px 40px; 表示:上右下左分别对应各个数字
padding和border对盒子的影响
设置padding和border会对盒子的实际大小造成影响
盒子的实际宽度 = 设置在css里的宽度 + 水平的paddding + 水平的border
盒子的实际高度 = 设置的高度 + 垂直的padding + 垂直的border
但是是要注意:
如果是存在父子关系的时候
如果子盒子没有设置宽度,并且子盒子的padding+border没有超过父盒子的宽度,子盒子的宽度是不会改变的
如果子盒子的padding+border超过父盒子的宽度,会被padding和border撑开宽度
案例:
padding的作用、padding计算题
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style> p { border: 1px solid #000; width: 500px; height: 500px; padding: 10px; } </style></head><body> <p> 我是盒子中的内容 </p></body></html>
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style> /*问题:大盒子宽为500px,高为300px, 在大盒子正中心有一个小盒子 小盒子宽为300px,高为150px, 请用padding将结构写出来 */ .father { width: 300px; height: 150px; padding: 75px 100px; background-color: red; } .son { width: 300px; height: 150px; background-color: green; } </style></head><body> <p class="father"> <p class="son"></p> </p></body></html>
盒子模型之margin
外边距属性和外边距连写
margin-top 控制盒子的上外边距
margin-right 控制盒子的右外边距
margin-bottom 控制盒子的下外边距
margin-left 控制盒子的左外边距
margin的连写和padding是一样的
垂直塌陷(合并)现象
当两个盒子垂直分布,同时给两个盒子设置了相对的margin值,两个盒子之间的实际距离,取决于连个margin值中的最大
包含塌陷(合并)现象
当给子盒子设置margin-top的时候,有可能会把父盒子一起带跑
如何解决:
1 、给父盒子设置边框
2、给父盒子设置overflow:hidden
案例:列表显示
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8"> <style> ul{ list-style:none; } ul li{ background:url(li.gif) no-repeat left 4px; padding-left: 25px; } li a{ text-decoration: none; } a:hover{ color: #9E7878; text-decoration: underline; } </style> </head> <body> <ul> <li><a href="#">大明星:姜潮魔性拜年道晚安</a></li> <li><a href="#">软萌正太徐浩演绎《小幸运》</a></li> <li><a href="#">漫威绝逼好看的电影镜头合集</a></li> <li><a href="#">从没见过这么搞笑的祖孙组合</a></li> <li><a href="#">史上最容易挨揍的自助餐吃法</a></li> </ul> </body></html>
给行内元素设置margin和padding的问题
给行内元素设置margin-top和margin-bottom没有效果
给行内元素设置垂直padding的时候,能够增加高度,位置不会依赖于padding撑开的位置
以后给行内元素控制位置,不要用垂直的padding和margin
我们通常使用行高控制行内元素的垂直位置
margin:0 auto;的秘密
margin-left和maring-right同时是auto的时候,会让子元素(块级)居中显示
能将设置了宽度的块级元素相对于其父元素水平居中
通常会使用它来将页面的版心居中
将行内元素和行内块级元素居中
给容器设置text-align:center
以上就是对盒子模型之CSS3学习之边框(Border) 的全部介绍,如果您想了解更多有关CSS3视频教程,请关注PHP中文网。
以上是盒子模型之CSS3学习之边框(Border)的详细内容。更多信息请关注PHP中文网其他相关文章!

具有CSS的自定义光标很棒,但是我们可以将JavaScript提升到一个新的水平。使用JavaScript,我们可以在光标状态之间过渡,将动态文本放置在光标中,应用复杂的动画并应用过滤器。

互动CSS动画和元素相互启动的元素在2025年似乎更合理。虽然不需要在CSS中实施乒乓球,但CSS的灵活性和力量的增加,可以怀疑Lee&Aver Lee&Aver Lee有一天将是一场

有关利用CSS背景滤波器属性来样式用户界面的提示和技巧。您将学习如何在多个元素之间进行背景过滤器,并将它们与其他CSS图形效果集成在一起以创建精心设计的设计。

好吧,事实证明,SVG的内置动画功能从未按计划进行弃用。当然,CSS和JavaScript具有承载负载的能力,但是很高兴知道Smil并没有像以前那样死在水中

是的,让#039;跳上文字包装:Safari Technology Preview In Pretty Landing!但是请注意,它与在铬浏览器中的工作方式不同。

此CSS-tricks更新了,重点介绍了年鉴,最近的播客出现,新的CSS计数器指南以及增加了几位新作者,这些新作者贡献了有价值的内容。

在大多数情况下,人们展示了@Apply的@Apply功能,其中包括Tailwind的单个property实用程序之一(会改变单个CSS声明)。当以这种方式展示时,@Apply听起来似乎很有希望。如此明显


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

Atom编辑器mac版下载
最流行的的开源编辑器

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 英文版
推荐:为Win版本,支持代码提示!