답변:
실제로는 아닙니다. 패딩이 목록 항목에 적용되고 있으므로 목록 항목 내의 실제 내용에만 영향을 미칩니다.
배경 과 패딩 스타일 의 조합을 사용하면 비슷한 모양을 만들 수 있습니다.
li {
background: url(images/bullet.gif) no-repeat left top; /* <-- change `left` & `top` too for extra control */
padding: 3px 0px 3px 10px;
/* reset styles (optional): */
list-style: none;
margin: 0;
}
상위 목록 컨테이너에 글 머리 기호 목록 항목을 배치하는 (UL)를 스타일링 추가 할 찾고 될 수있다, 이것을 목록 외에도 기사는 좋은 시작 참조가 있습니다.
top
의 경우 상단 패딩 대신 값 변경이 효과적이었습니다. background: url(images/bullet.gif) no-repeat left 8px;
아직 언급되지 않은이 질문에 대한 가능한 해결책은 다음과 같습니다.
li {
position: relative;
list-style-type: none;
}
li:before {
content: "";
position: absolute;
top: 8px;
left: -16px;
width: 8px;
height: 8px;
background-image: url('your-bullet.png');
}
이제 li :의 상단 / 왼쪽을 사용하여 새 글 머리 기호를 배치 할 수 있습니다. li :의 너비와 높이는 선택한 배경 이미지와 크기가 같아야합니다. 이것은 Internet Explorer 8 이상에서 작동합니다.
나는 같은 문제가 있었지만 배경 옵션을 사용할 수 없었고 (배경을 여러 개 사용하고 싶지 않았습니다) 다른 해결책을 생각했습니다.
이것은 활성 / 현재 메뉴 항목에 대한 사각형 표시기가있는 메뉴의 예입니다 (기본 규칙 스타일은 다른 규칙에서 none으로 설정 됨)
nav ul li.active>a:before{
content: "■";
position: absolute;
top: -22px;
left: 55px;
font-size: 33px;
}
": before"의사 클래스와 함께 사각형 문자를 사용하여 사각형을 만들고 절대 위치 지정을 사용하여 자유롭게 위치를 지정할 수 있습니다.
다른 옵션은 다음과 같습니다.
li:before{
content:'';
padding: 0 0 0 25px;
background:url(../includes/images/layouts/featured-list-arrow.png) no-repeat 0 3px;
}
(0 3px)를 사용하여 목록 이미지를 배치하십시오.
IE8 +, Chrome, Firefox 및 Opera에서 작동합니다.
목록 스타일을 쉽게 바꿀 수 있고 이미지를 전혀 사용하지 않아도 될 가능성이 있기 때문에이 옵션을 사용합니다. (아래 바이올린)
http://jsfiddle.net/flashminddesign/cYAzV/1/
최신 정보:
이것은 두 번째 줄로 들어가는 텍스트 / 내용을 설명합니다.
ul{
list-style-type:none;
}
li{
position:relative;
}
ul li:before{
content:'>';
padding:0 10px 0 0;
position:absolute;
top:0; left:-10px;
}
글 머리 기호와 내용 사이에 더 많은 공간을 원하면 왼쪽에 padding-left :를 추가하십시오.
실제로 원하는 것은 패딩 (현재 <li>에 추가하고 있음)을 <ul> 태그에 추가하면 글 머리 기호가 <li>의 텍스트와 함께 이동하는 것입니다.
당신이 볼 수있는 목록 스타일 위치도 있습니다. 선이 글 머리 기호 이미지를 둘러싸는 방식에 영향을줍니다.
"대런"과 같은 답변이지만 약간의 수정
li
{
background: url("images/bullet.gif") left center no-repeat;
padding-left: 14px;
margin-left: 24px;
}
크로스 브라우저에서 작동하며 패딩과 여백을 조정하면됩니다.
중첩에 대한 편집 : 하위 중첩 목록에 여백 왼쪽을 추가하려면이 스타일을 추가하십시오.
ul ul {margin-left : 15px; }
나는 이와 같은 것을 사용하고 있는데, 꽤 깨끗하고 단순 해 보입니다.
ul {
list-style: none;
/* remove left padding, it's usually unwanted: */
padding: 0;
}
li:before {
content: url(icon.png);
display: inline-block;
vertical-align: middle;
/* If you want some space between icon and text: */
margin-right: 1em;
}
위의 코드는 대부분의 경우와 마찬가지로 작동합니다.
정확한 조정을 위해 다음과 같이 수정할 수 있습니다 vertical-align
.
vertical-align: top;
/* or */
vertical-align: -10px;
/* or whatever you need instead of "middle" */
당신은 설정할 수 있습니다 list-style: none
에 li
대신 ul
당신이 원하는 경우.
기본 글 머리 기호 이미지를 숨기고 다음과 background-image
같이 훨씬 많은 제어 기능을 사용하십시오.
li {
background-image: url(https://material.io/tools/icons/static/icons/baseline-add-24px.svg);
background-repeat: no-repeat;
background-position: left 50%;
padding-left: 2em;
}
ul {
list-style: none;
}
<ul>
<li>foo</li>
<li>bar</li>
</ul>
My solution:
ul {
line-height: 1.3 !important;
li {
font-size: x-large;
position: relative;
&:before {
content: '';
display: block;
position: absolute;
top: 5px;
left: -25px;
height: 23px;
width: 23px;
background-image: url(../img/list-char.png) !important;
background-size: 23px;
background-repeat: no-repeat;
}
}
}
list-style-image
위치를 잡을 수 없다면 어떤 점입니까 ? 이 결과로 대부분의 사람들이 같은 해결 방법을 사용하는 것으로 보인다::before
및background-image
대신.