CSS3 상자 크기LOGIN

CSS3 상자 크기

CSS3 상자 크기

CSS3 상자 크기 속성에는 패딩(padding)과 테두리(border)가 포함됩니다.


CSS3 상자 크기 조정 속성을 사용하지 마세요

기본적으로 요소의 너비와 높이는 다음과 같이 계산됩니다.

너비(너비) + 패딩(패딩) + 테두리(테두리) = 실제 요소 너비

높이(높이) + 패딩(내부 여백) + 테두리(테두리) = 요소의 실제 높이

즉, 요소의 너비/높이를 설정할 때 요소의 실제 표시 높이와 너비를 의미합니다. 더 커질 것입니다(요소의 테두리와 패딩도 너비/높이로 계산되기 때문입니다).

5.jpg

위 그림에서 두 <div> 요소의 너비와 높이 설정은 동일하지만 div2가 패딩을 지정하기 때문에 실제 표시되는 크기는 일치하지 않습니다.


<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>php中文网(php.cn)</title>
    <style>
        .div1 {
            width: 300px;
            height: 100px;
            border: 1px solid blue;
        }
        .div2 {
            width: 300px;
            height: 100px;
            padding: 50px;
            border: 1px solid red;
        }
    </style>
</head>
<body>
<div class="div1">这个是个较小的框 (width 为 300px ,height 为 100px)。</div>
<br>
<div class="div2">这个是个较大的框 (width 为 300px ,height 为 100px)。</div>
</body>
</html>

실행 그리고 사용해 보세요

이 방법을 사용하면 더 작은 상자를 얻고 패딩을 포함하려면 테두리의 너비와 패딩을 고려해야 합니다.

CSS3의 상자 크기 조정 속성은 이 문제를 매우 잘 해결합니다.


CSS3 box-sizing 속성 사용

CSS3 box-sizing 속성에는 요소의 너비와 높이에 패딩(padding)과 테두리(border)가 포함됩니다.

요소에 box-sizing: border-box;가 설정되어 있으면 패딩(padding)과 테두리(border)도 너비와 높이에 포함됩니다.

다음은 두 가지< 간단한 예입니다. ;div> 요소에 box-sizing: border-box; 속성을 추가합니다.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
<style> 
.div1 {
    width: 300px;
    height: 100px;
    border: 1px solid blue;
    box-sizing: border-box;
}
.div2 {
    width: 300px;
    height: 100px;    
    padding: 50px;
    border: 1px solid red;
    box-sizing: border-box;
}
</style>
</head>
<body>
<div class="div1">两个 div 现在是一样大小的!</div>
<br>
<div class="div2">php中文网!</div>
</body>
</html>

실행하고 사용해 보세요

box-sizing: border-box; 효과가 더 좋습니다. 이는 바로 많은 개발자에게 필요한 것입니다.


다음 코드는 모든 요소의 크기를 보다 직관적인 방식으로 표시할 수 있습니다. 많은 브라우저는 이미 box-sizing: border-box; 를 지원합니다. (그러나 전부는 아닙니다. 그렇기 때문에 width: 100%인 입력 요소와 텍스트 요소의 너비가 다릅니다.)

모든 요소에 대해 상자 크기를 사용하는 것이 좋습니다.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
<style>
* {
    box-sizing: border-box;
} 
input, textarea {
    width: 100%;
}
</style>
</head>
<body>
<form action="action_page.php">
用户名:<br>
<input type="text" name="username" value="php"><br>
邮箱:<br>
<input type="text" name="email" value="429240967@qq.com"><br>
评论:<br>
<textarea name="message" rows="5" cols="30">
</textarea>
<br><br>
<input type="submit" value="Submit">
</form> 
<p><strong>提示:</strong> 可以尝试移除样式中的 box-sizing 属性,看看会发生什么。注意移除后部分浏览器 input, textarea, 和 submit 按钮的宽度不一致。</p>
</body>
</html>

실행하여 사용해 보세요



다음 섹션
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <style> .div1 { width: 300px; height: 100px; border: 1px solid blue; box-sizing: border-box; } .div2 { width: 300px; height: 100px; padding: 50px; border: 1px solid red; box-sizing: border-box; } </style> </head> <body> <div class="div1">两个 div 现在是一样大小的!</div> <br> <div class="div2">php中文网!</div> </body> </html>
코스웨어