Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >框模型

框模型

作者头像
十月梦想
发布于 2018-08-29 02:26:12
发布于 2018-08-29 02:26:12
71900
代码可运行
举报
文章被收录于专栏:十月梦想十月梦想
运行总次数:0
代码可运行

框模型(盒子模型)

   1. 框模型(box model)定义了元素框

    处理内容,外边距,内边距,边框的方式

    框:页面元素皆为框

    <a>sss</a>

    <div>ewrewr</div>

    内容区域的

       width:宽

       height:高

    增加了内外边距和边框不会影响内容区域的大小,

        但是会改变元素框的大小

     元素框的实际宽度:width+左右外边距+左右border边框+左右内边距

     元素框的实际高度:height+上下外边距+上下边框+上下内边距

    2.外边距

        1.围绕在元素周围的空白区域,

            默认是不能被其他元素所占据

        2.作用

            主要是用来拉开元素之间的距离

        3.属性

            margin:20px;

            单边设置

            margin-方向

                top:

                right:

                bottom:

                left:

            取值

                1.  px

                2.  %

                3.  auto  自动

                4.  负值

        4.取负值

            让元素反方向移动

            通常只设置

                margin-top:负值

                margin-left:负值

        5.auto

            能自动计算外边距(左右)

            特点:

                控制 非行内元素 水平居中的使用

                      input 

                前提:必须加宽和高

        6.外边距简便写法

            margin:值;       代表4个方向

            margin: 值1    值2;  

                    上下   左右

            margin:值1     值2    值3;

                    上     左右   下

            margin:值1     值2    值3   值4;

                    上      右     下    左

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<html lang="en">
<head>

<style>
body{border:1px solid black;}
div{
width:200px;
height:200px;
background-color: yellowgreen;
/*margin:30px; */ /* margin:值默认四个方向*/
margin:10px 50px 40px; /*三个值分别是 (10px)上 左右(20px) 下(40px)*/
/*margin:10px 20px;*/
 /*两个值表示 (10px)上下的值 (20px)左右的值*/
 /*    margin:10px 20px 40px 50px    */
 /*    四个值表示:上 右 下 左方向    */

}
.d1{

width:200px;
height:80px;
background-color: blue;
margin:0;
}

</style>
</head>
<body>
<div></div>
<div class="d1"></div>
<a href="">行元素</a>
</body>
</html>

     注意:top:正值元素向下移动,bottom:正值向上运动,right:正值向左运动,left:正值向右移动;负值与正值方向移动相反。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
style>
#d1{width:500px;
height: 500px;
border:1px solid gray;}
#d1>div{
width:200px;
height:200px;
background-color: yellowgreen;
margin-top:50px;/*元素下移50px*/
margin-bottom:100px;/*元素上移100px*/
margin-left:200px;/*元素友移200px*/
margin-right:500px;/*元素左移500px*/
}
</style>

   7.具有默认外边距的标记

            body,h1-h6,ul,ol,dl,dd,p都有默认的外边距

            通过css重写的方式统一

                body,h1,h2,h3,h4,h5,h6,p,ol,ul,dl,dd,dt{

                     margin:0;

                }

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<style>body,h1,h2,h3,h4,h5,h6,p,ol,ul,dl,dd,dt{
margin:0;
}</style>
</head>
<body>
<h1>我是h1</h1>
<h2>我是h2</h2>
<h3>我是h3</h3>
<h4>我是h4</h4>
<h5>我是h5</h5>
<h6>我是h6</h6>
<ul>
<li>one</li>
<li>1</li>
</ul>
<ol>
<li>你好</li>
<li>hello</li>
</ol>
<dl>
<dt>一二三四五</dt>
<dd>六七八九十</dd>

</dl>
</body>
</html>

      body,h1-h6,ul,ol,dl,dd,p都有一定的外边距(margin)  可以通过css统一将外边距去除。

 8.特殊情况

            1.外边距合并

                当两个垂直外边距相遇时,会合并成一个外边距

                合并后的外边距高度是两个外边距中最大的那个值

            2.外边距溢出

                子债父还

                在特定情况下,给子元素设置边距时,

                   效果会作用到父元素身上

                特定情况

                    1.上下外边距  会产生溢出

                    2.父元素没有设置边框,并且设置

                        第一个子元素的上外边距

                        或者

                        给最后一个元素设置下外边距

特殊情况1:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#d1{width:500px;
height:500px;
background-color: yellow;
margin-bottom: 200px;}
#d2{width:500px;
height:500px;
background-color: green;
margin-top: 20px;}/* 垂直时候外边距一致只默认一次,如果不同默认值比较大的*/
</style>
</head>
<body>
<div id="d1"></div>
<div id="d2"></div>

     特殊情况2:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#d1{width:200px;
height:100px;
background-color: yellow;
margin-bottom: 200px;}
#d2{width:200px;
height:100px;
background-color: green;
margin-top: 20px;}
#d3{
width:300px;
height:228px;
background-color: black;


}
p{width:150px;
height:108px;
background-color: goldenrod;
margin-top:30px;

}
</style>
</head>
<body>
<div id="d1"></div>
<div id="d2"></div>
<div id="d3">
<p></p>
</div>
</body>

      此情况下,给p(子元素)标记进行设置外边距则 d3(父元素)会跟随进行移动,margin的效果则作用在父元素上。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#d3{
width:300px;
height:228px;
background-color: black;
border: 1px solid green;

  给d3(父元素)加上border则可解决问题,父元素则不会受影响。

解决方案

                    1.给父元素添加一个边框

                    2.由父元素的内边距来取代子元素的外边距

        9.注意

            1.上下(margin-top/magin-bottom)外边距 对行元素无效

            2.上下(margin-top/magin-bottom)外边距,对行内块元素有特殊的效果

                (一行都会受到影响)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<style>
input{margin-top:100px;} 行内块元素使用则整行元素都会被作用,不管改行的行元素或者块元素。
/* a {margin-top:100px;}*/  a标记外边距无效果,不能作用于行元素


</style>
</head>
<body>
<a href="">我是超链接标记</a>
<input type="text">
</body>
</html>

   3.内边距

        内容区域离边框的距离

        扩大内边距会影响整个盒子的大小

        语法

            padding:值;

            padding:值  代表四个方向

            padding:值1   值2;

                     上下  左右

            padding:值1  值2   值3;

                     上   左右  下

            padding:值1   值2   值3  值4;

                     上   右     下   左

        注意

            内边距的效果只会影响本身

用法与外边距margin类似,但是内边距的内容区域不影响,影响的内容区域与边框的距离。

padding(内边距)的实际作用如下图:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-11-1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
腾讯云服务器bt宝塔配置弹性网卡实现多个公网ip
独立ip的优点,在这里就不多赘述了。而网上关于这方面的帖子大多都很朦统,今天写一下避免各位在走我走过的坑。也方便自己日后查看。
AlexTao
2019/09/05
16.4K0
腾讯云服务器bt宝塔配置弹性网卡实现多个公网ip
腾讯云云主机实现多IP绑定
腾讯云主机实际上一直允许绑定弹性IP,最开始是可以实现经典IP更换为弹性IP可以有效的屏蔽掉攻击,释放IP进行更换。
Zach
2018/08/10
8.5K0
腾讯云云主机实现多IP绑定
腾讯云一台服务器多IP的超详细配置linux
新账号关联我们公司购买腾讯云产品,有优惠哦!联系电话:13430587834(微信同号)
深圳市网商天下-网商云
2018/07/18
23K1
Ubuntu 18.04 使用弹性网卡配置多个外网IP
购买服务器后默认只有一个公网IP,经常会遇到单个外网IP无法满足业务需求,此文将介绍,一台服务器如何通过单网卡、多网卡配置多个IP。
隔壁没老王
2019/08/08
12.1K1
Ubuntu 18.04 使用弹性网卡配置多个外网IP
centos7服务器添加辅助网卡绑定多ip实践演示
以centos7.2为例 centos7服务器主网卡绑定多ip实践演示: https://cloud.tencent.com/developer/article/1360461 centos7服务器添加辅助网卡绑定多ip实践演示: https://cloud.tencent.com/developer/article/1360462 Windows服务器主网卡绑定多ip实践演示: https://cloud.tencent.com/developer/article/1
醉生萌死
2018/11/04
9.9K6
centos7服务器添加辅助网卡绑定多ip实践演示
给一台腾讯云服务器配上多个免费外网弹性IP
https://cloud.tencent.com/document/product/213/15379#.E7.BD.91.E5.8D.A1.E7.9B.B8.E5.85.B3.E9.99.90.E5.88.B6
Cong Min
2019/03/10
11.9K0
腾讯云CVM配置多网卡方法
创建cvm可以参考官网文档,本文主要演示如果在腾讯云cvm上配置一个主网卡与两个辅助网卡。作者已经购买好cvm和弹性公网ip,这里提前给出规划的ip与网卡对应关系:
渣渣辉
2020/03/30
8.7K0
腾讯云CVM配置多网卡方法
centos服务器主网卡及添加辅助网卡绑定多IP实践演示
创建主网卡及辅助网卡的多IP 在控制台创建即可 参见:https://cloud.tencent.com/developer/article/1360461
芷兰云
2018/12/03
4K0
Linux 双网卡绑定
Linux 双网卡绑定 Linux 双网卡绑定 双网卡绑定的常用模式: mode1:active-backup 模式,即主备模式。 mode0:round-broin 模式,即负载均衡模式(需要交换机配置聚合口 cisco叫 port channel) 步骤: 1.创建bond0启动配置文件: 2:编辑网卡配置文件ifcfg-eth0,ifcfg-eth1 2.1:配置网卡一 2.2:配置网卡二 3:创建并配置modprobe.conf文件 4:设置开机启动 5:查看并测试 5.1:查看bond0信息 (/
程序员同行者
2018/06/22
30.5K1
云服务器多IP场景实践
弹性公网IP(Elastic IP,EIP)简称弹性IP地址或弹性IP,是可以独⽴申请的公⽹IP地址。EIP可以实时绑定/解绑到私有⽹网络的CVM、NAT网关、弹性网卡上。
WAF
2018/12/04
28.6K3
腾讯云弹性网卡产品使用介绍
最近有个网友在问腾讯云主机的公网IP总在变为什么不能固定下来。 经过了解此用户是购买腾讯云主机用于测试和临时搭建网站,所以计费方式是“按量计费”和“竞价实例” 当云主机重启时就会出现网友反馈的问题公网IP会变化,那是否有方法让公网IP不变? 这里推荐两种方式:
研究僧
2020/05/30
7.5K0
腾讯云CentOS7修改网卡配置文件
[root@VM_1_62_centos ~]# cp /etc/sysconfig/network-scripts/ifcfg-eth0{,.bak}
逐鹿信息技术
2021/05/19
3.6K0
腾讯云CentOS7修改网卡配置文件
【云端架构】弹性网卡如何与云服务器绑定
本来看ENI文档没发现什么问题,考虑到社区小伙伴们部分刚上云还是新手。文档写的有点深度就看不懂了,所以更一篇文章写官方文档中没出现的实践操作部分。
墨色明月
2018/07/27
12.6K0
【云端架构】弹性网卡如何与云服务器绑定
centos7服务器主网卡绑定多ip实践演示
以centos7.2为例 centos7服务器主网卡绑定多ip实践演示: https://cloud.tencent.com/developer/article/1360461 centos7服务器添加辅助网卡绑定多ip实践演示: https://cloud.tencent.com/developer/article/1360462 Windows服务器主网卡绑定多ip实践演示: https://cloud.tencent.com/developer/article/1
醉生萌死
2018/11/04
13.1K8
centos7服务器主网卡绑定多ip实践演示
腾讯云弹性网卡绑定多IP利用外网访问教程
云主机配置 弹性网卡数 网卡绑定IP数 CPU: 1核 内存: 1G 2 2 CPU: 1核 内存: >1G 2 6 CPU: 2核 2 10 CPU: 4核 内存: < 16G 4 10 CPU: 4核 内存: > 16G 4 20 CPU: 8~12核 6 20 CPU: >12核 8 30 创建弹性网卡并将 IP 与其绑定 切换到购买所在地,点击新建,选择所属网络和所属子网,并分配内网IP: 不会的网上有很多实例 分配好IP 远程登录服务器进行设置 333333.png IP地址对应弹性网卡
用户3867577
2018/11/20
28.7K1
CentOS/Linux 双网卡绑定单一IP,网卡热备
随着技术的发展,四张千兆以太口网卡已经变成了服务器的标配。而在生产环境中,为了保证CentOS/Linux服务器的网络稳定,会对服务器的两张网卡进行绑定一个IP来现实网卡的热备。具体操作方法如下:
星哥玩云
2022/07/04
1.6K0
如何在服务器上进行双网卡双IP双网关配置?
作者个人研发的在高并发场景下,提供的简单、稳定、可扩展的延迟消息队列框架,具有精准的定时任务和延迟队列处理功能。自开源半年多以来,已成功为十几家中小型企业提供了精准定时调度方案,经受住了生产环境的考验。为使更多童鞋受益,现给出开源框架地址:
冰河
2021/02/05
7.1K0
如何在服务器上进行双网卡双IP双网关配置?
Linux网卡配置与绑定-linux快速入门教程
Redhat Linux的网络配置,基本上是通过修改几个配置文件来实现的,虽然也可以用ifconfig来设置IP,用route来配置默认网关,用hostname来配置主机名,但是重启后会丢失。
jack.yang
2025/04/05
2440
【CVM】Linux 主网卡配置双IP
GATEWAY 写法为内网IP最后一位改为 1,即内网IP 172.17.0.11,GATEWAY 即为 172.17.0.1
Hanzo
2020/05/25
8.1K0
【CVM】Linux 主网卡配置双IP
Linux系统双网卡绑定配置教程
Linux系统双网卡绑定配置教程 环境说明 系统版本 [root@ ~]# cat /etc/redhat-release CentOS release 6.8 (Final) [root@ ~]# uname -r 2.6.32-642.6.1.el6.x86_64 网卡说明 eth0 192.168.1.8(服务器外网卡) eth1 eth2 两块服务器网卡(内网) 关闭相关服务 关闭防火墙 [root@ ~]# /etc/init.d/iptables stop [root@ ~]# c
民工哥
2020/09/16
5.7K0
推荐阅读
相关推荐
腾讯云服务器bt宝塔配置弹性网卡实现多个公网ip
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验