指定针对元素的宽度与高度的计算方法—— box-sizing

2023-12-29 12:32

本文主要是介绍指定针对元素的宽度与高度的计算方法—— box-sizing,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在CSS 3中,使用box-sizing属性来指定针对元素的宽度与高度的计算方法。
本文将针对这个属性做详细介绍。

1. box-sizing属性

在CSS中, 使用width属性与height属性来指定元素的宽度与高度。但使用box-sizing属性,可以指定width属性值与height属性值是否包含元素内部的补白区域(padding),以及边框的宽度与高度。

属性值有:

  • content-box
    表示元素的宽度和高度不包括内部补白区域,以及边框的宽度与高度。(默认值)
  • border-box
    表示元素的宽度和高度包括内部补白区域,以及边框的宽度与高度。

在样式代码中,使用Firefox浏览器时,需要将其书写成 “-moz-box-sizing” 的形式;使用Safari浏览器或Chrome浏览器时,需要将其书写成 “-webkit-box-sizing” 的形式;使用Opera浏览器时,需要将其书写成 “-ms-box-sizing” 的形式。

示例

<body><div id="divl">示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文宇示例文字示例文字示例文字示例文宇示例文字示例文字示例文字示例文字示例文宇示例文字示例文字</div><div id="div2">示例文字示例文字示例文字示例文字示例文宇示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字</div>
</body>
<style>div{width: 300px;border: 30px solid #fa0;padding: 30px;background-color: #ff0;margin: 30px auto;}#div1{box-sizing: content-box;}#div2{box-sizing: border-box;}
</style>

在这里插入图片描述

在这个示例中,虽然同时指定两个div元素的宽度都是300px,但是#div1指定的是元素内容部分的宽度为300px,元素的总宽度=(元素内容宽度300px + 内部补白宽度30px * 2 + 边框宽度30px * 2)=420px;
#div2指定的是元素的总宽度为300px,元素内容部分的宽度=(元素总宽度300px - 内部补白宽度30px * 2 - 边框宽度30px * 2)=180px。

2. 为什么要使用box-sizing属性

使用box-sizing属性的目的是控制元素的总宽度,如果不使用该属性,样式中默认使用的是content-box属性值。有些场合下利用border-box属性值会使得页面布局更加方便。比如下面的示例所示,只要将两个div元素的border-box属性值都设定为50%,就可以确保两个div元素的并列显示了。

<body><div id="divl">示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文宇示例文字示例文字示例文字示例文宇示例文字示例文字示例文字示例文字示例文宇示例文字示例文字</div><div id="div2">示例文字示例文字示例文字示例文字示例文宇示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字示例文字</div>
</body>
<style>div{width: 50%;border: 30px solid #fa0;padding: 30px;background-color: #ff0;float: left;box-sizing: border-box;}#div2{border: 30px solid green;}
</style>

在这里插入图片描述

这篇关于指定针对元素的宽度与高度的计算方法—— box-sizing的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/549449

相关文章

Pandas利用主表更新子表指定列小技巧

《Pandas利用主表更新子表指定列小技巧》本文主要介绍了Pandas利用主表更新子表指定列小技巧,通过创建主表和子表的DataFrame对象,并使用映射字典进行数据关联和更新,实现了从主表到子表的同... 目录一、前言二、基本案例1. 创建主表数据2. 创建映射字典3. 创建子表数据4. 更新子表的 zb

使用Python从PPT文档中提取图片和图片信息(如坐标、宽度和高度等)

《使用Python从PPT文档中提取图片和图片信息(如坐标、宽度和高度等)》PPT是一种高效的信息展示工具,广泛应用于教育、商务和设计等多个领域,PPT文档中常常包含丰富的图片内容,这些图片不仅提升了... 目录一、引言二、环境与工具三、python 提取PPT背景图片3.1 提取幻灯片背景图片3.2 提取

如何高效移除C++关联容器中的元素

《如何高效移除C++关联容器中的元素》关联容器和顺序容器有着很大不同,关联容器中的元素是按照关键字来保存和访问的,而顺序容器中的元素是按它们在容器中的位置来顺序保存和访问的,本文介绍了如何高效移除C+... 目录一、简介二、移除给定位置的元素三、移除与特定键值等价的元素四、移除满足特android定条件的元

使用Python实现获取网页指定内容

《使用Python实现获取网页指定内容》在当今互联网时代,网页数据抓取是一项非常重要的技能,本文将带你从零开始学习如何使用Python获取网页中的指定内容,希望对大家有所帮助... 目录引言1. 网页抓取的基本概念2. python中的网页抓取库3. 安装必要的库4. 发送HTTP请求并获取网页内容5. 解

C++从序列容器中删除元素的四种方法

《C++从序列容器中删除元素的四种方法》删除元素的方法在序列容器和关联容器之间是非常不同的,在序列容器中,vector和string是最常用的,但这里也会介绍deque和list以供全面了解,尽管在一... 目录一、简介二、移除给定位置的元素三、移除与某个值相等的元素3.1、序列容器vector、deque

C++常见容器获取头元素的方法大全

《C++常见容器获取头元素的方法大全》在C++编程中,容器是存储和管理数据集合的重要工具,不同的容器提供了不同的接口来访问和操作其中的元素,获取容器的头元素(即第一个元素)是常见的操作之一,本文将详细... 目录一、std::vector二、std::list三、std::deque四、std::forwa

Python实现合并与拆分多个PDF文档中的指定页

《Python实现合并与拆分多个PDF文档中的指定页》这篇文章主要为大家详细介绍了如何使用Python实现将多个PDF文档中的指定页合并生成新的PDF以及拆分PDF,感兴趣的小伙伴可以参考一下... 安装所需要的库pip install PyPDF2 -i https://pypi.tuna.tsingh

Flask解决指定端口无法生效问题

《Flask解决指定端口无法生效问题》文章讲述了在使用PyCharm开发Flask应用时,启动地址与手动指定的IP端口不一致的问题,通过修改PyCharm的运行配置,将Flask项目的运行模式从Fla... 目录android问题重现解决方案问题重现手动指定的IP端口是app.run(host='0.0.

使用C++实现链表元素的反转

《使用C++实现链表元素的反转》反转链表是链表操作中一个经典的问题,也是面试中常见的考题,本文将从思路到实现一步步地讲解如何实现链表的反转,帮助初学者理解这一操作,我们将使用C++代码演示具体实现,同... 目录问题定义思路分析代码实现带头节点的链表代码讲解其他实现方式时间和空间复杂度分析总结问题定义给定

java获取图片的大小、宽度、高度方式

《java获取图片的大小、宽度、高度方式》文章介绍了如何将File对象转换为MultipartFile对象的过程,并分享了个人经验,希望能为读者提供参考... 目China编程录Java获取图片的大小、宽度、高度File对象(该对象里面是图片)MultipartFile对象(该对象里面是图片)总结java获取图片