이 글에서는 CSS의 테두리 크기 속성 사용법을 소개합니다. 도움이 필요한 친구들에게 도움이 되기를 바랍니다.
box-sizing은 요소의 너비와 높이를 계산하는 데 사용되는 기본 CSS 상자 모델을 변경하는 데 사용됩니다. 여기에는 콘텐츠 상자, 테두리 상자 및 상속의 세 가지 값이 있습니다. 상속은 더 이상 중복되지 않는 상위 요소로부터 상자 크기 양식을 상속하는 것을 의미합니다.
## 1. 속성 설명
#### content-box
기본값도 CSS2.1의 상자 모델입니다. 너비
및 높이
를 계산할 때 테두리
, 패딩
및 여백
은 계산되지 않습니다. 높이와 너비는 콘텐츠 높이입니다content-box
默认值,也是css2.1中的盒子模型。在计算width
和height
时候,不计算border
、padding
和margin
。高度、宽度都只是内容高度。
#### border-box
css3
新增。 width
和height
属性包括内容,内边距和边框,但不包括外边距。
计算公式:
width = width = border + padding + 内容宽度
height = border + padding + 内容高度
## 2. 考虑盒子模型的margin
从上面可以知道,即时是border-box
也是不计算margin
,只是多余计算了border
和padding
。因为border
和padding
都是盒子模型的一部分,但是margin
标记的是盒子和盒子的间距。所以,border-box
的解释很符合常理。
问题来了,如果有时候一定要设置margin,怎么做到自由控制来保证兼容?例如,我们下面要设置一个撑满页面的盒子元素,而且有外边距干扰,怎么做?
实现如下效果图:
代码:源码下载
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>yuanxin.me</title> <style type="text/css"> *{ margin: 0; padding: 0; } #app { box-sizing: border-box; /* 指定计算方式 */ margin: 10px; /* 外边距干扰 */ /* 利用 css3 的 calc */ width: calc(100vw - 2*10px); height: calc(100vh - 2*10px); } </style> </head> <body> <p id="app"> </p> </body> </html>
所以,当需要计算外边距(margin),可以配合css3中的四则运算(calc
.
테두리 상자
css3
New. 너비
및 높이
속성에는 콘텐츠, 패딩 및 테두리가 포함되지만 여백은 포함되지 않습니다.
계산 공식:
## 2. 박스 모델의 margin
border임을 알 수 있습니다. -box
margin
은 계산되지 않지만 border
와 padding
은 중복해서 계산됩니다. 테두리
와 패딩
은 모두 상자 모델의 일부이지만 여백
은 상자 사이의 거리를 표시하기 때문입니다. 그러므로 border-box
에 대한 설명은 매우 상식적입니다. 다음 렌더링을 달성하세요:* { margin: 0; padding: 0; } p { box-sizing: border-box; }🎜그래서 여백(margin)을 계산해야 할 때 4가지 산술 연산(
calc) CSS3에서 🎜를 사용하세요. 🎜🎜## 3. 사용 제안🎜🎜프로젝트 경험과 w3c의 권장 사항을 바탕으로 box-sizing 속성을 border-box로 설정하는 것이 좋습니다. 🎜rrreee🎜관련 권장 사항: 🎜🎜🎜순수한 CSS를 사용하여 동적으로 움직이는 기차를 구현하는 방법🎜🎜🎜🎜CSS 선택기가 무엇인가요? CSS 선택기(코드 포함)에 대한 포괄적인 요약 🎜🎜
위 내용은 CSS에서 테두리 크기 속성 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!