• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Jak wystylizować listę, żeby tylko jedna z zagnieżdżonych list miała czcionkę w innym kolorze?

42 Warsaw Coding Academy
0 głosów
345 wizyt
pytanie zadane 28 grudnia 2015 w HTML i CSS przez ewelina.r Nowicjusz (210 p.)

Mam zagnieżdżone listy i chciałabym żeby tylko elementy drugiej listy miały czcionkę koloru zielonego. Jak to można naprawić? 

 

	<ol>
		<li>Pierwsza</li>
		<li>Pierwsza	
		<ul>
			<li>Druga
			<ul>
				<li>Trzecia</li>
				<li>Trzecia</li>
				<li>Trzecia</li>
			</ul>
			</li>
			<li>Druga</li>
		</ul>
		</li>	
		<li>Pierwsza</li>				
	</ol>

 

i style: 

ol > li > ul > li {
	color: green;
}

 

3 odpowiedzi

0 głosów
odpowiedź 28 grudnia 2015 przez ScriptyChris Mędrzec (190,190 p.)
wybrane 28 grudnia 2015 przez ewelina.r
 
Najlepsza

Elementy drugiej listy, czyli wszystkie <li>Trzecia</li> ? Wtedy w CSS napisz tak:

ol > li > ul > li > ul {
    color: green;
}

Propozycja Danieter77 jest OK, tylko jeśli będziesz miała więcej takich list (które mają być zielone) to wtedy nie ID, ale dodaj klasę.

komentarz 28 grudnia 2015 przez ewelina.r Nowicjusz (210 p.)
Jako elementy drugiej listy chodziło mi o Druga . Niedokładnie się chyba wysłowiłam.
komentarz 28 grudnia 2015 przez saliwan22 Gaduła (3,110 p.)

No to nie widzę problemu:

 

html:

<li id="id listy">Druga</li>

a w css:

#id listy
{
   color: green;
}

 

komentarz 28 grudnia 2015 przez Czort Nałogowiec (32,500 p.)
Pewnie musisz połączyć to co Krzycho92 napisał ze swoim kodem, coś takiego może: http://jsfiddle.net/2bZAW/5015/
komentarz 28 grudnia 2015 przez saliwan22 Gaduła (3,110 p.)
albo w ten sposób
komentarz 28 grudnia 2015 przez ScriptyChris Mędrzec (190,190 p.)

Pomyślałem nad właściwością CSS :not(x) (dla elementów trzeciej listy), ale coś nie umiem jej tu zastosować.

ol > li > ul > li :not(ul)  {
    color: green;
}

Tylko, że koloruje tylko tą trzecią listę, a chciałem aby kolorował wszystko, tylko nie to :(

komentarz 28 grudnia 2015 przez Czort Nałogowiec (32,500 p.)

Można z :not(s) w ten sposób na przykład: http://jsfiddle.net/2bZAW/5016/.

Tylko czy trzeba sobie tak życie komplikować skoro można to rozwiązać w łatwiejszy i wspierany przez stare ie sposób?wink

+1 głos
odpowiedź 28 grudnia 2015 przez Danieter77 Bywalec (2,470 p.)
może daj temu li id ?
komentarz 28 grudnia 2015 przez Eimens Maniak (69,240 p.)
Zaleca się używać class'y
0 głosów
odpowiedź 28 grudnia 2015 przez Eimens Maniak (69,240 p.)

Masz dwie możliwości, pierwsza bardziej profesjonalna nadać temu ul jakąś klasę np: <ul class="lista-dwa"></ul> i odwołać się w css .lista-dwa { color: green; } albo wpisać ścieżkę bezwzględną i po prostu wypisujesz po kolei znaczniki aż dojdziesz do swojego drugiego menu. Będzie to wyglądało następująco: ol > li > ul > li > ul { color: green; }

Podobne pytania

0 głosów
3 odpowiedzi 902 wizyt
pytanie zadane 17 września 2016 w HTML i CSS przez Savuelo Początkujący (310 p.)
0 głosów
0 odpowiedzi 117 wizyt
0 głosów
1 odpowiedź 236 wizyt

93,385 zapytań

142,384 odpowiedzi

322,540 komentarzy

62,745 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...