2015-05-24 11 views
7

Może to wydawać się pytaniem zrzutu, ale dodałem UL do strony podstawowej, a lista wydaje się być niecentryczna. Nie ma nic szczególnego w tej liście. Nie dodano żadnych konkretnych css: po prostu lista. Po załadowaniu na żywo jest nieco poza centrum.
Czy po lewej stronie znajduje się domyślny margines lub dopełnienie?Czy UL ma domyślny margines lub dopełnienie?

<h3>Title Heading</h3> 
    <ul id="listItems"> 
     <li>itemOne</li> 
     <li>itemTwo</li> 
     <li>itemThree</li> 
    </ul> 

Korpus posiada cały kod CSS dla centrowania, wyrównując, pływak, itp „Tytuł Header” wyrównać idealnie. Tylko lista jest trochę wyłączona.

Dziękuję.

Och, nie wiem, czy to jest ważne, ale dodałem "id", bo ... chciałem użyć "pierwszego rodzaju", by nadać pierwszy element em (pogrubiony).

+0

dodaj ul - dopełnienie: 0; – Dmitriy

+1

[Standard W3C] (http://www.w3.org/TR/html5/rendering.html#lists) mówi, że 'ul' powinien mieć lewe dopełnienie o wielkości 40 pikseli, ale przeglądarki mają swoje własne wartości domyślne. –

Odpowiedz

9

problem polega na tym, że domyślnie przeglądarki mają niestandardowe css - w chromie na przykład:

ul, menu, dir { 
    display: block; 
    list-style-type: disc; 
    -webkit-margin-before: 1em; 
    -webkit-margin-after: 1em; 
    -webkit-margin-start: 0px; 
    -webkit-margin-end: 0px; 
    -webkit-padding-start: 40px; 
} 

będziesz musiał użyć niestandardową regułę dla ul:

element.style { 
    margin-left: 0px; 
    /* set to 0 if your not using a list-style-type */ 
    padding-left: 20px; 
} 
+1

OK, dopełnienie wydaje się działać. Po prostu czuję się dziwnie dodając dopełnienie do domyślnego ustawienia, nad którym nie mam kontroli lub którego nie mogę rozpoznać w moim kodzie. Ale myślę, że cokolwiek działa. – JZeig1

+0

Chciałbym obdarzyć was obu, ale ... – JZeig1

2

Listy będą zawsze wyrównane, więc tekst pozostanie w linii z krawędzią elementu nadrzędnego. Oznacza to, że punkty są domyślnie umieszczone na zewnątrz (po lewej) elementu. można wymusić dostosowanie się stać punktem kuli, a nie tekst tak:

ul { 
    list-style-position: inside; } 

Alternatywnie można po prostu dodać własny margines pchnąć całą listę elementów tak:

ul { 
    margin-left: 20px; } 
+0

OK, próbowałem sugestii na dwa sposoby. Dodałem kod do css pod selektorem #itemList. Dodałem także sekcję wokół ul zatytułowaną id = "bodyList" (starałem się nie zadzierać z moim konkretnym kodem, aby zmienić f-o-t). Nic się nie stało. Użyłbym marginesu po lewej stronie, ale nie jestem pewien, jak wpłynie on na zmienność podczas zmiany rozmiaru; dodatkowo nie ma żadnych pocisków. – JZeig1

+0

@ JZeig1 Cóż, wygląda na to, że Twój problem polega na stosowaniu CSS do '#itemList', gdy ma to być' # listItems' – Coop

Powiązane problemy