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

question-closed Menu ma sie wyświetlać tylko poziomo

Object Storage Arubacloud
0 głosów
186 wizyt
pytanie zadane 15 marca 2020 w HTML i CSS przez Krzysiek_34 Mądrala (6,090 p.)
zamknięte 17 marca 2020 przez Krzysiek_34

Witam.

Postanowiłem zrobić poziome: Menu 1, Menu 2, Menu 3, Menu 4 i Menu 5.

Poziomo wyświetla sie tylko: Menu 1 i Menu 5. Niestety pozostałe menu wyświetlają sie pionowo.

Tak to wygląda:

https://jsfiddle.net/Krzysiek_35/rszb9c7e/28/

Chciałbym, aby: Menu 1, Menu 2, Menu 3, Menu 4 i Menu 5 ---> wyświetlały sie poziomo.

Dopisywałem do odpowiednich selektorów display: inline-block, ale niestety nic nie pomogło.

Czy wiecie gdzie tkwi błąd, że te wszystkie menu nie wyświetlają sie poziomo?

Będę bardzo wdzięczny za fachową pomoc.

komentarz zamknięcia: Problem został rozwiązany

3 odpowiedzi

+1 głos
odpowiedź 15 marca 2020 przez pablop76 VIP (123,180 p.)

Nadałeś szerokość dla menu która uniemożliwia rozmieszczenie items w linii

.menu ul
{
	margin: 0;
	padding: 0;
	list-style-type: none;
	float: left;
	width: 9em;//9 x 16 = 144px
}

skasuj to width i nadaj  inline-block oraz width dla li

.menu li
{
	position: relative;
	min-height: 1px;
	vertical-align: bottom;
    display: inline-block;
    width: 80px;
}

 

komentarz 15 marca 2020 przez Krzysiek_34 Mądrala (6,090 p.)
edycja 15 marca 2020 przez Krzysiek_34
Są postępy, ale nie jest do końca dobrze.

Spójrz jak to wygląda:

https://jsfiddle.net/Krzysiek_35/rszb9c7e/31/

Menu 1, Menu 2 i Menu 3 - są oddzielone od siebie, a mają być połączone.

Menu 4 i Menu 5 - są ze sobą połączone, ale i tak nie wygląda to za dobrze.

Zauważ, że te robocze strzałki skierowane w prawo pojawiły sie w miejscu cyfr: 1, 2, 3 i 4.

Chciałbym, aby:

1. Wszystkie menu były ze sobą połączone.

2. Robocza strzałka skierowana w prawo ma sie znajdować po prawej stronie od cyfry: 1, 2, 3 i 4 (tak jak jest wyświetlane w tamtym pierwszym linku).

Czy wiesz jak to teraz naprawić?

Czy mam dopisać "width: ???" do jakiegoś selektora?
1
komentarz 16 marca 2020 przez pablop76 VIP (123,180 p.)

Aby pozbyć się odstępów (domyślny margines) należy użyć ujemnego marginesu. lepiej w tej sytuacji zastosować float, ale należy pamiętać o clearfix

.menu li
{
	position: relative;
	min-height: 1px;
	vertical-align: bottom;
  float:left;
  width: 80px;
}
//clearfix
.menu ul::after {
  content: "";
  clear: both;
  display: table;
}

Jeżeli chodzi o strzałki to jak napisałem wcześniej dodaj width do .menu li

A NAJLEPIEJ UŻYJ FLEXBOX i nie stosuj float do takich zadań. Został on stworzony do opływania obrazu przez tekst i był takim hakiem w czasach gdy nie było flexboxa czy grida

komentarz 16 marca 2020 przez Krzysiek_34 Mądrala (6,090 p.)

Teraz działa jak należy.

Na ten moment mam zapisane w CSS:

.menu li
{
	position: relative;
	min-height: 1px;
	vertical-align: bottom;
	float: left;
	width: 120px;
}

Wielkie dzięki za pomoc.smiley

Mam jeszcze 2 pytania w tej kwestii.

1. Skoro menu teraz wyświetla sie prawidłowo, po co mam to dopisywać? :

.menu ul::after
{
  content: "";
  clear: both;
  display: table;
}

2. Skoro najlepiej użyć flexboxa i nie stosować float do takich zadań, to pod jakim względem bedzie to lepsze rozwiązanie?

komentarz 16 marca 2020 przez pablop76 VIP (123,180 p.)
1. clearfix jest potrzebny żeby nie utracić wysokości pojemnika. Daj border dla ul to zobaczysz różnice.

2. Lepiej perfumować, czy lepiej pozbyć się smrodu :)

Po po prostu to jest naturalne podejście.
komentarz 16 marca 2020 przez Krzysiek_34 Mądrala (6,090 p.)

Zapisałem w CSS:

.menu ul:after
{
	content: "";
	display: table;
	clear: both;
}

.menu li
{
	position: relative;
	min-height: 1px;
	vertical-align: bottom;
	float: left;
	width: 120px;
}

Ma być w końcu (wariant 1 - podany z neta):

.menu ul:after

czy (wariant 2 - podany przez Ciebie):

.menu ul::after

Który wariant jest prawidłowy?

1
komentarz 16 marca 2020 przez pablop76 VIP (123,180 p.)
Oba. Pseudoklasy jeden dwukropek, pseudoelementy dwa. Ale jak zawsze napiszesz jeden to też będzie dobrze.
komentarz 16 marca 2020 przez Krzysiek_34 Mądrala (6,090 p.)
Jeszcze raz dzięki za pomoc.

Temat uważam za zamknięty.
0 głosów
odpowiedź 15 marca 2020 przez Velta Maniak (52,370 p.)

Brakuje mu klasy top_parent i znajduje się poza listą pozostałych elementów.

komentarz 15 marca 2020 przez Krzysiek_34 Mądrala (6,090 p.)

Dopisałem w CSS:

.top_parent
{
	display: inline-block;
}

...i niestety dalej jest to samo. Nie ma żadnej poprawy. Próbowałem też innych wariantów i dalej nie ma poprawy. :(

0 głosów
odpowiedź 16 marca 2020 przez jaca121212 Nałogowiec (40,760 p.)

To ja też dodam od siebie cegiełkę. Mianowicie musiałem trochę zmienić  menu  style  są napisane od nowa jak i konstrukcja  została lekko zmodyfikowana tak aby można było to poukładać. Przerobione menu wrzucam tutaj

Podobne pytania

0 głosów
1 odpowiedź 146 wizyt
pytanie zadane 28 listopada 2019 w HTML i CSS przez Krzysiek_34 Mądrala (6,090 p.)
0 głosów
2 odpowiedzi 1,197 wizyt
pytanie zadane 25 czerwca 2016 w HTML i CSS przez artix132 Użytkownik (870 p.)
0 głosów
0 odpowiedzi 128 wizyt
pytanie zadane 10 sierpnia 2016 w JavaScript przez owolcz Początkujący (340 p.)

92,579 zapytań

141,432 odpowiedzi

319,664 komentarzy

61,964 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...