>웹 프론트엔드 >HTML 튜토리얼 >html(코드)에서 센터를 설정하는 방법 소개

html(코드)에서 센터를 설정하는 방법 소개

不言
不言원래의
2018-09-01 10:49:3212244검색

이 글의 내용은 HTML의 센터링 설정 방법에 대한 내용입니다. 필요한 친구들이 참고하면 좋을 것 같습니다.

가로 중심 맞추기

실제 개발 과정에서 기사 제목 등 요소를 가로 중심으로 배치해야 하는 상황을 많이 접하게 됩니다. 여기서 일반적인 수평 센터링 상황에는 인라인 요소와 블록 수준 요소가 포함됩니다. 블록 수준 요소는 고정 너비 블록 수준 요소와 가변 너비 블록 수준 요소로 더 나뉩니다. 이름에서 알 수 있듯이 고정 너비 블록 수준 요소는 블록 수준 요소의 너비가 고정된 값임을 의미하며, 가변 너비 블록 수준 요소의 경우 블록 수준 요소의 너비는 고정된 값이 아니라는 것을 알고 있습니다. 고정된 값.

인라인 요소

설정되는 요소가 텍스트나 그림과 같은 인라인 요소인 경우 상위 요소에 text-align:center를 설정하여 이를 수행합니다.

<body>
    <div class="textCenter">这是一个在父元素中居中元素</div>
</body>
<style>
    textCenter{
    text-align:center;
    }
</style>

위 코드에서 "이것은 상위 요소의 중앙에 있는 요소입니다"라는 것을 알 수 있습니다. 이 텍스트의 상위 요소에 대한 CSS 스타일은 text-align:center 속성을 추가하므로 텍스트가 다음 위치에 표시됩니다. 센터. 단, 설정하려는 요소가 블록 수준 요소인 경우에는 이 방법을 적용할 수 없습니다. 블록 수준 요소는 고정 너비 블록 수준 요소와 가변 너비 블록 수준 요소의 두 가지 유형으로 구분됩니다.

고정 너비 블록 수준 요소

고정 너비 블록 수준 요소에 대해 "고정 너비" 및 "블록 수준 요소"의 두 가지 조건이 충족되면 왼쪽 및 "블록 수준 요소"를 설정하여 가운데 정렬을 수행할 수 있습니다. 오른쪽 여백 값을 자동으로 설정합니다.

<body>
    <div>水平居中的定宽块级元素</div>
</body>
<style>
    div{
        border:1px solid blue;
        width:100px;    /*宽度设置固定值*/
        margin:10px auto;
    }
</style>
/*或者也可以写成 margin-left:auto;
               margin-right:auto;*/
/* 元素的上下margin属性可以照常设置,不受影响 */

가변 너비 블록 수준 요소

가변 너비 블록 수준 요소를 중앙에 배치하는 방법에는 세 가지가 있습니다. 첫 번째는 테이블 태그를 추가하는 것이고, 두 번째는 display:inline 메서드를 설정하는 것입니다. 첫 번째 방법은 표시 유형이 인라인 요소의 경우 가변 너비 요소의 속성을 설정하는 것입니다. 세 번째 방법은 위치:상대적 및 왼쪽:50%를 설정하고 상대 위치 지정을 사용하여 요소를 50% 오프셋하는 것입니다. 센터링을 달성하기 위해 왼쪽.

테이블 태그 추가

테이블 태그 추가는 테이블 태그의 길이 적응성을 활용합니다. (길이는 정의되지 않으며 상위 요소 본문의 길이는 기본값으로 설정되지 않습니다. 테이블 길이는 테이블 태그의 길이에 따라 결정됩니다. 내부 텍스트)이므로 고정 너비 블록 수준 요소로 간주할 수 있으며 고정 너비 블록 수준 요소의 여백 방법을 사용하여 가로 중앙에 배치합니다.

사용하는 첫 번째 단계는 중앙에 정렬해야 하는 요소 외부에 테이블 태그를 추가한 다음 테이블에 대해 "왼쪽 및 오른쪽 여백 중심"을 설정하는 것입니다.

<div>
    <table>
        <tbody>
            <tr><td>
            <ul>
                <li>锄禾日当午</li>
                <li>汗滴禾下土</li>
                <li>谁知盘中餐</li>
                <li>粒粒皆辛苦</li>
            </ul>
            </td></tr>
        </tbody>
    </table>
</div>
<style>
    table{
    border:1px solid;
    margin:0 auto;
    }
</style>

display:inline 방식 설정

변경 블록 수준 요소를 인라인 유형으로 표시하고 인라인 요소를 표시하도록 설정한 다음 text-align:center를 사용하여 가운데 정렬을 구현합니다. 테이블 방식에 비해 이 방식의 장점은 의미 없는 태그를 추가할 필요가 없다는 점이지만, 이 방식에도 몇 가지 문제가 있습니다. 즉, 블록 요소의 표시를 인라인으로 변경하고 요소가 적어집니다 인라인 요소가 될 때.

<body>
    <div class="container">
        <ul>
            <li><a href="#">First</a></li>
            <li><a href="#">Second</a></li>
            <li><a href="#">Third</a></li>
        </ul>
    </div>
</body>
 
<style>
.container{
    text_align:center;
}
.container ul{
    list-style:none;
    margin:0;
    padding:0;
    display:inline;
}
 
.container li{
margin-right:10px;
display:inline;
}
</style>

위치:상대 및 왼쪽:50%를 설정

상위 요소에 대해 부동 소수점을 설정한 다음 위치:상대 및 왼쪽:50%를 설정하고 위치:상대 및 왼쪽:50%를 설정하여 수평 중심 맞추기를 달성합니다. 자식 요소.

<body>
<div class="container">
    <ul>
        <li><a href=""#>First</a></li>
        <li><a href=""#>Second</a></li>
        <li><a href=""#>Third</a></li>
        <li><a href=""#>Fourth</a></li>
    </ul>
</div>
</body>
 
<style>
.container{
    float:left;
    position:relative;
    left:50%;
}
 
.container ul{
    list-style:none;
    margin:0;
    padding:0;
 
    position:relative;
    left:-50%
}
 
.container li{
    float:left;
    display:inline;
    margin-right:8px
}
</style>

세로 센터링

세로 센터링은 두 가지 상황으로 나뉩니다. 즉, 상위 요소의 높이가 결정된 한 줄 텍스트와 상위 요소의 높이가 결정된 여러 줄 텍스트입니다.

부모 요소의 높이가 결정된 텍스트 한 줄

부모 요소의 높이가 결정된 텍스트 한 줄은 부모 요소의 높이와 줄 높이를 일관되게 설정하여 세로 중앙에 배치됩니다. . height는 요소의 높이이고, line-height는 줄 높이, 즉 줄 사이의 기준선 사이의 거리인 줄 간격입니다. 줄 높이와 글꼴 크기 사이의 계산된 차이는 절반으로 나누어지고(CSS에서는 "줄 간격"이라고 함) 텍스트 줄의 위쪽과 아래쪽에 추가됩니다. 이 내용을 담을 수 있는 가장 작은 상자는 라인 상자입니다. 이러한 종류의 텍스트 줄 높이와 블록 높이는 단점을 가져옵니다. 즉, 텍스트 내용의 길이가 블록 너비보다 길면 일부 내용이 블록에서 벗어나게 됩니다.

<div class="container">
    hello,world!
</div>
 
<style>
.container{
    height:10px;
    line-height:10px;
}
</style>

부모 요소의 특정 높이가 있는 여러 줄 텍스트

여러 줄 텍스트, 그림 등을 부모 요소의 특정 높이에 수직으로 가운데 맞추는 방법에는 두 가지가 있습니다. table 태그를 지정한 다음 수직 정렬:중간을 설정합니다. CSS에는 수직 중앙 정렬을 위한 수직 정렬 속성이 있습니다. 상위 요소가 이 스타일을 설정하면 모든 인라인 블록 유형 하위 요소에 유용합니다.

/* 方式一 */
<body>
<table><tbody><tr><td class="wrap">
<div>
    <p>居中一下</p>
</div>
</td></tr></tbody></table>
</body>
 
<style>
table td{
    height:500px;
    background:#ccc;
}
</style>
 
/* 方式二 */
<div class="container">
    <div>
        <p>居中一下下</p>
        <p>居中一下下</p>
        <p>居中一下下</p>
        <p>居中一下下</p>
        <p>居中一下下</p>
    </div>
</div>
<style>
.container{
    height:300px;
    background:#ccc;
    display:table-cell;/*IE8以上及Chrome、Firefox*/
    vertical-align:middle;/*IE8以上及Chrome、Firefox*/
}
</style>

Chrome, Firefox 및 IE8 이상 브라우저에서는 블록 수준 요소 표시를 table-cell로 설정하고 수직 정렬 속성을 활성화할 수 있지만 IE6 및 7은 이 스타일을 지원하지 않습니다.

디스플레이 유형을 암시적으로 변경

개발 프로세스 중에 요소에 대해 position:absolute 또는 float:left 속성을 설정하면 요소의 표시 유형이 자동으로 display:inline_block(블록 수준 요소)으로 변경됩니다. 요소의 너비와 높이를 설정할 수 있습니다.

<div class="container">
    <a href="#" title="">点这里看看</a>
</div>
<style>
.container a{
    position;absolute;
    width:200px;
    background:#ccc;
}
</style>

관련 권장 사항:

CSS html 요소 센터링과 html 요소 콘텐츠 센터링의 차이점

html 요소의 가로 및 세로 센터링을 설정하는 방법

위 내용은 html(코드)에서 센터를 설정하는 방법 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.