css의 10가지 상자 수평 수직 가운데 맞추기
12847 단어 # 프런트엔드 면접 문제css
<body>
<div class="wrap allCenter">//
<div class= "item allCenterChild"></div>//
</div>
</body>
첫 번째: 신축성 레이아웃(flex 레이아웃): 부모는 하위 요소를 수직으로 가운데로 하고, 가운데 속성은 부모 요소에만 정의할 수 있다.
<style>
.wrap{//【 】 : 600px,
width: 600px;
height: 600px;
border: 2px solid purple;
}
.item{//【 】 : 150px,
width:150px;
height:150px;
background: green;
}
//
.allCenter{//
display:flex;// ,display flex
justify-content: center;//
align-items:center;//
}
.allCenterChild{//
}
</style>
두 번째: 하위 요소를 외부 거리로 자동으로 밀어냄
.allCenter{//
display:flex;// ,display flex
}
.allCenterChild{//
margin:auto;// margin:auto auto auto auto;
}
세 번째;
.allCenter{//
display:flex;// ,display flex
}
.allCenterChild{//
align-self:center;// align-items( ) , ,
margin:0 auto;//
}
네 번째: 수평 가운데와 수직 가운데의 속성은 하위 요소에 정의되고 부모 요소에 정의되지 않는 Grid 레이아웃
.allCenter{//
display:grid;// grid ,display grid,
}
.allCenterChild{// ,
justify-self:center;// ,
align-self:center;//
}
다섯 번째: 하위 요소의 외곽선 50%에서 상자 높이의 절반을 뺀다(하위 요소 상자 높이는 150px)
.allCenterChild{
margin: calc(50%-75px) auto 0 auto;
}
여섯 번째: 절대적인 포지셔닝으로 서브원소의 상우하좌거리는 모두 같고 상하좌우는 모두 0으로 설정한다. [줄다리기 효과](원소의 넓이가 높으면 미리 설정해야 한다)
.allCenter{//
position:relative;
}
.allCenterChild{
position:absolute;
left:0;
right:0;
top:0;
bottom:0;// ,
margin:auto;// margin
}
일곱 번째: 절대 포지셔닝, 하위 요소는transfrom 속성을 사용하고【원소의 넓이가 높으면 설정할 필요가 없음】
.allCenterChild{
position:absolute;
left:50%;// 50%
right:50%;// 50%
// ,
transfrom:translate(-50%,-50%)// , 50%, 50%,
}
여덟 번째:table의 특징을 이용하여 표에만 유효하다*하위 요소에 넓은 높이와 수량을 설정하지 않았을 때 주의:table-cell은margin을 감지하지 않고 부모 요소에table-row 등 속성을 설정하면height를 감지하지 못하게 한다.
.allCenter{
display:table-cell;//
vertical-align:middle;// ,
text-align:center;// , ,, ,text-align ,
}
.allCenterChild{
display: inline-block;// , text-align ,
}
아홉 번째: 내용이 한 줄만 있을 때 사용할 수 있고, 다른 것은 사용할 수 없다. 문자에 대해 수평 수직으로 가운데 부모 요소:div 하위 요소:줄 안의 문자
<stytle>
.oneline{
width:600px;
height:80px;
background:pink; //
font-size:25px;//
text-align:center;//
line-height:80px;//
}
</stytle>
<div class= "oneline">
content,
</div>
10가지:margin-top과margin-left를 이용하여[원소의 넓이가 높아야 설정]
.allCenterChild{
position:absolute;
top:50%;
margin-top:-10px;
left:50%;
margin-left:-50px;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
v-bind를 사용하여 CSS에 대한 Vue3 상태애플리케이션을 더 동적으로 만들기 위해 Vue는 동적 상태를 템플릿 내부의 마크업에 연결할 수 있도록 합니다. 예를 들어 특정 기준이 충족되는 경우에만 요소에 클래스를 적용할 수 있습니다. 그러나 구성 요소 상태가 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.