2014-11-30 2 views
3

li을 인라인 블록으로 놓을 때 글 머리 기호가 더 이상 표시되지 않습니다. li이 인라인 블록 인 경우 CSS li 글 머리 기호가 표시되지 않음

ul { 
 
    list-style-type: circle; 
 
} 
 
ul.columns>li { 
 
    display: inline-block; 
 
    padding-right: 1cm; 
 
    margin-left: 20px; 
 
}
<h1>Vertical</h1> 
 
<ul> 
 
    <li><a class="openPage">Besoins en magnésium</a></li> 
 
    <li><a class="openPage">Besoins en azote</a></li> 
 
</ul> 
 

 
<h1>Horizotal is missing bullets</h1> 
 
<ul class="columns"> 
 
    <li><a class="openPage">Besoins en magnésium</a></li> 
 
    <li><a class="openPage">Besoins en azote</a></li> 
 
</ul>

내 바이올린은 http://jsfiddle.net/stephanedeluca/9xdkp3q7/2/

+3

총알 포인트 또는 목록 스타일 아이콘에서만 작동 표시'를 들어 :리스트 item' 요소를 적용했다. 이 속성은 기본적으로'li' 요소에 적용됩니다.이 요소는 이제 displayine : inline-block을 적용하여 재정의합니다. 따라서 목록 스타일 아이콘이 사라집니다. –

답변

3

그것은 확실히 그것을하는 가장 좋은 방법이 아니다. 나는 대답이 이미 게시되어 이해하지만, 하나는 절대 위치를 사용하고 내 의견에 전반적으로 덜 효과적이며, 다른 하나는 복잡한 이상 :하지만 ... 이건 정말 다른 결정적인 결과를 가지고 있지 불러

ul.columns>li:before { content:'\ffed'; margin-right:0.5em; } 

편집을 또한 왜 관련 포지셔닝이 필요한지 잘 모르겠습니까? 게다가이 간격은 이미이 방법으로 정렬되어 있습니다. 그리고 그것은 단지 2 가지 속성, 더 간단합니다.

+0

\ code 어떤 종류의 코드입니까? 디스크 유형 총알에 대한 코드가 뭐죠? –

1

수동으로 :before에 글 머리 기호를 추가 할 수 있습니다 참조 : 사이비 요소.

* { 
 
    font-family: sans-serif; 
 
} 
 
ul { 
 
    list-style-type: circle; 
 
} 
 
ul.columns>li { 
 
    display: inline-block; 
 
    padding-right: 1cm; 
 
    margin-left: 20px; 
 
} 
 
ul.columns>li:before { 
 
    content: '◦'; 
 
    position: relative; 
 
    font-size: 1.3em; 
 
    font-weight: bold; 
 
    top: 1px; 
 
    left: -3px; 
 
}
<h1>Vertical</h1> 
 

 
<ul> 
 
    <li><a class="openPage">Besoins en magnésium</a> 
 
    </li> 
 
    <li><a class="openPage">Besoins en azote</a> 
 
    </li> 
 
</ul> 
 

 
<h1>Horizotal is missing bullets</h1> 
 

 
<ul class="columns"> 
 
    <li><a class="openPage">Besoins en magnésium</a> 
 
    </li> 
 
    <li><a class="openPage">Besoins en azote</a> 
 
    </li> 
 
</ul>

7

총알 포인트 또는 목록 스타일 아이콘 display: list-item CSS 속성 요소를 적용에만 작동합니다. 이 속성은 기본적으로 li 요소에 적용되며, 이제는 display: inline-block을 적용하여 재정의합니다. 따라서 목록 스타일 아이콘이 사라집니다.

두 개의 li 요소가 서로 인접 해있는 것처럼 보입니다. 음, 그 경우에는 반드시 display: inline-block을 사용해야합니다. 표시가있는 의사 클래스를 list-item으로 사용하십시오. 그것은 당신의 문제를 해결할 것입니다.

ul.columns>li:before{ 
    content: ""; 
    display: list-item; 
    position: absolute; 
} 

Working Fiddle

+0

이것은 흥미 롭습니다. 비록 내 자신의 경우 (실제 응용 프로그램), 총알 지점은 약간 높은 위치에 있습니다. 그것을 아래쪽으로 이동시키는 방법이 있습니까? @Mr_Green –

+0

@ StéphanedeLuca [fiddle] (http://jsfiddle.net/9xdkp3q7/5/)을 시도해보고 알려주세요. 조금 높으면 음수 값으로 margin-top을줍니다. –

+1

@ Mr_Green 당신은 확실히 나를 위해 많은 시간을 저축했습니다 – Sakeer

관련 문제