HTML CSS ::BEFORE 위치 질문드립니다.
본문
<ul class="pd">
<li>
테스트
<ul>
<li>ㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱ</li>
<li>ㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴ</li>
<li>ㄷㄷㄷㄷㄷㄷㄷㄷㄷㄷㄷㄷㄷㄷㄷ</li>
</ul>
</li>
</ul>
.pd { counter-reset: colorcircle 0; }
.pd > li { position: relative; list-style: none; padding-left: 3rem; }
.pd > li+li { margin-top: 1.2rem }
.pd > li::before { position: absolute; top: 50%; left: 0.5rem; transform: translateY(-50%); counter-increment: colorcircle 1; content: counter(colorcircle); color: #fff; font-size: 1.5rem; z-index: 1; }
.pd > li::after { content: ''; position: absolute; top: 50%; left: 0; transform: translateY(-50%); display: inline-block; background-color: #f54; border-radius: 50%; width: 1.1em; height: 1.2em; }
[캡처 사진]
before, after 로 구성한 카운터 넘버링의 위치가 <li></li> 전체 중앙에 자리잡는데 이것을, 맨 위 텍스트에 위치를 못시키나요??
!-->!-->
답변 1
<style>
.pd { counter-reset: colorcircle 0; }
.pd > li { position: relative; list-style: none; padding-left: 3rem; }
.pd > li+li { margin-top: 1.2rem }
.pd > li::before { position: absolute; top: 50%; left: 0.5rem; transform: translateY(-50%); counter-increment: colorcircle 1; content: counter(colorcircle); color: #fff; font-size: 1.5rem; z-index: 1; }
.pd > li::after { content: ''; position: absolute; top: 50%; left: 0; transform: translateY(-50%); display: inline-block; background-color: #f54; border-radius: 50%; width: 1.1em; height: 1.2em; }
.pd > li::before, .pd > li::after {
top: calc(1.5rem * 0.5);
}
</style>
<ul class="pd">
<li>
테스트
<ul>
<li>ㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱㄱ</li>
<li>ㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴ</li>
<li>ㄷㄷㄷㄷㄷㄷㄷㄷㄷㄷㄷㄷㄷㄷㄷ</li>
</ul>
</li>
</ul>
답변을 작성하시기 전에 로그인 해주세요.