before
또는 after
의사 요소를 사용하고 여기에 CSS를 적용 할 수 있습니다. 다양한 방법이 있습니다. before
및을 모두 추가 하고 after
각각을 회전하고 배치하여 막대 중 하나를 형성 할 수 있습니다. 더 쉬운 해결책은 before
요소 에만 두 개의 테두리를 추가 하고를 사용하여 회전하는 것 transform: rotate
입니다.
pseuso 요소 대신 실제 요소를 사용하는 다른 솔루션을 보려면 아래로 스크롤하십시오.
이 경우 목록에 글 머리 기호로 화살표를 추가하고 em
크기를 사용하여 목록 의 글꼴에 맞게 크기를 조정했습니다.
ul {
list-style: none;
}
ul.big {
list-style: none;
font-size: 300%
}
li::before {
position: relative;
/* top: 3pt; Uncomment this to lower the icons as requested in comments*/
content: "";
display: inline-block;
/* By using an em scale, the arrows will size with the font */
width: 0.4em;
height: 0.4em;
border-right: 0.2em solid black;
border-top: 0.2em solid black;
transform: rotate(45deg);
margin-right: 0.5em;
}
/* Change color */
li:hover {
color: red; /* For the text */
}
li:hover::before {
border-color: red; /* For the arrow (which is a border) */
}
<ul>
<li>Item1</li>
<li>Item2</li>
<li>Item3</li>
<li>Item4</li>
</ul>
<ul class="big">
<li>Item1</li>
<li>Item2</li>
<li>Item3</li>
<li>Item4</li>
</ul>
물론 당신은 사용할 필요가 없습니다 before
또는 after
당신은뿐만 아니라 일반 요소에 같은 트릭을 적용 할 수 있습니다. 위 목록의 경우 추가 마크 업이 필요하지 않기 때문에 편리합니다. 그러나 때로는 어쨌든 마크 업을 원하거나 필요할 수 있습니다. div
또는 a를 사용할 수 있으며 span
, 심지어 사람들 i
이 '아이콘'에 대한 요소를 재활용하는 것을 보았습니다 . 마크 업은 아래와 같이 보일 수 있습니다. <i>
이것을 사용 하는 것이 옳은지는 논란의 여지가 있지만, 안전한쪽에 있기 위해 스팬을 사용할 수도 있습니다.
/* Default icon formatting */
i {
display: inline-block;
font-style: normal;
position: relative;
}
/* Additional formatting for arrow icon */
i.arrow {
/* top: 2pt; Uncomment this to lower the icons as requested in comments*/
width: 0.4em;
height: 0.4em;
border-right: 0.2em solid black;
border-top: 0.2em solid black;
transform: rotate(45deg);
}
And so you can have an <i class="arrow" title="arrow icon"></i> in your text.
This arrow is <i class="arrow" title="arrow icon"></i> used to be deliberately lowered slightly on request.
I removed that for the general public <i class="arrow" title="arrow icon"></i> but you can uncomment the line with 'top' <i class="arrow" title="arrow icon"></i> to restore that effect.
더 많은 영감을 얻고 싶다면 Nicolas Gallagher 의 멋진 CSS 아이콘 라이브러리를 확인하세요 . :)