Dom
Komponenty
Menu
Składnik menu
Ostatnia aktualizacja: Lip. 13, 2026
Pionowe menu CSS Tailwind tylko dla CSS dla list nawigacyjnych. Stany elementów aktywnych, wyłączonych i ikon. Warianty rozmiarów. Dostępny WCAG AA, współpracuje z Django, HTMX, Laravel, React i dowolnym stosem.
Składniki menu wyświetlają zorganizowane listy działań lub opcji nawigacji. Zbudowany z semantycznych list HTML i elementów łączy, system menu Frutjam obsługuje układy pionowe i poziome, menu zagnieżdżone, ikony i stany aktywne. W pełni dostępne dzięki nawigacji za pomocą klawiatury menu płynnie integrują się z listami rozwijanymi, paskami bocznymi i wzorcami nawigacji kontekstowej.
Tylko CSS, nie wymaga JavaScript. Dostępny w WCAG AA i niezależny od frameworka — współpracuje z Django, HTMX, Laravel, React i dowolnym stosem.
Klasa
Typ
Opis
menu Opierać Pionowa lista elementów nawigacji lub działań
menu-item Modyfikator Indywidualna, klikalna pozycja w menu
menu-title Modyfikator Etykieta sekcji nieinteraktywnej
menu-horizontal Modyfikator Układ poziomy
menu-vertical Modyfikator Układ pionowy (domyślny)
menu-active Modyfikator Wymusza aktywny/podświetlony stan elementu
menu-disabled Modyfikator Wyłączony wygląd elementu menu
menu-xs Rozmiar Bardzo mały
menu-sm Rozmiar Mały
menu-md Rozmiar Średni (domyślny)
menu-lg Rozmiar Duży
menu-xl Rozmiar Bardzo duży
Podstawowe użycie
< ul class = "menu menu-horizontal" >
< li >< a class = "menu-item" > Item 1</ a ></ li >
< li >< a class = "menu-item" > Item 2</ a ></ li >
< li >< a class = "menu-item" > Item 3</ a ></ li >
</ ul >
Zobacz kod
< ul class = "menu menu-vertical" >
< li >< a class = "menu-item" > Item 1</ a ></ li >
< li >< a class = "menu-item" > Item 2</ a ></ li >
< li >< a class = "menu-item" > Item 3</ a ></ li >
</ ul >
Zobacz kod
Menu z ikoną i tekstem
< ul class = "menu menu-vertical lg:menu-horizontal" >
< li >< a class = "menu-item" > Item 1</ a ></ li >
< li >< a class = "menu-item" > Item 2</ a ></ li >
< li >< a class = "menu-item" > Item 3</ a ></ li >
</ ul >
Zobacz kod
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 < ul class = "menu menu-xs w-56" >
< li >< a class = "menu-item" > Xsmall 1</ a ></ li >
< li >< a class = "menu-item" > Xsmall 2</ a ></ li >
</ ul >
< ul class = "menu menu-sm w-56" >
< li >< a class = "menu-item" > Small 1</ a ></ li >
< li >< a class = "menu-item" > Small 2</ a ></ li >
</ ul >
< ul class = "menu menu-md w-56" >
< li >< a class = "menu-item" > Medium 1</ a ></ li >
< li >< a class = "menu-item" > Medium 2</ a ></ li >
</ ul >
< ul class = "menu menu-lg w-56" >
< li >< a class = "menu-item" > Large 1</ a ></ li >
< li >< a class = "menu-item" > Large 2</ a ></ li >
</ ul >
< ul class = "menu menu-xl w-56" >
< li >< a class = "menu-item" > Xlarge 1</ a ></ li >
< li >< a class = "menu-item" > Xlarge 2</ a ></ li >
</ ul >
Zobacz kod
< ul class = "menu w-56" >
< li class = "menu-title" > Title</ li >
< li >< a class = "menu-item" > Item 1</ a ></ li >
< li >< a class = "menu-item" > Item 2</ a ></ li >
< li >< a class = "menu-item" > Item 3</ a ></ li >
</ ul >
Zobacz kod
< ul class = "menu w-56" >
< li >
< h2 class = "menu-title" > Title</ h2 >
< ul >
< li >< a class = "menu-item" > Item 1</ a ></ li >
< li >< a class = "menu-item" > Item 2</ a ></ li >
< li >< a class = "menu-item" > Item 3</ a ></ li >
</ ul >
</ li >
</ ul >
Zobacz kod
< ul class = "menu w-56" >
< li >< a class = "menu-item" > Enabled item</ a ></ li >
< li class = "menu-disabled" >< button disabled class = "menu-item" > disabled item</ button ></ li >
< li class = "menu-disabled" >< a class = "menu-item" aria-disabled = "true" > disabled item</ a ></ li >
</ ul >
Zobacz kod
< ul class = "menu" >
< li >< a class = "menu-item" > Item 1</ a ></ li >
< li >< a class = "menu-item menu-active" > Item 2</ a ></ li >
< li >< a class = "menu-item" > Item 3</ a ></ li >
</ ul >
Zobacz kod
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 < ul class = "menu w-56" >
< li >< a class = "menu-item" > Item 1</ a ></ li >
< li >
< a class = "menu-item" > Parent</ a >
< ul >
< li >< a class = "menu-item" > Submenu 1</ a ></ li >
< li >< a class = "menu-item" > Submenu 2</ a ></ li >
< li >
< a class = "menu-item" > Parent</ a >
< ul >
< li >< a class = "menu-item" > Submenu 1</ a ></ li >
< li >< a class = "menu-item" > Submenu 2</ a ></ li >
</ ul >
</ li >
</ ul >
</ li >
< li >< a class = "menu-item" > Item 3</ a ></ li >
</ ul >
Zobacz kod
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 < ul class = "menu w-56" >
< li >< a class = "menu-item" > Item 1</ a ></ li >
< li >
< div class = "accordion accordion-flush" >
< details open >
< summary > Parent</ summary >
< div class = "accordion-content" >
< ul >
< li >< a class = "menu-item" > Submenu 1</ a ></ li >
< li >< a class = "menu-item" > Submenu 2</ a ></ li >
< li >
< div class = "accordion accordion-flush" >
< details open >
< summary > Parent</ summary >
< div class = "accordion-content" >
< ul >
< li >< a class = "menu-item menu-active" > Submenu 1</ a ></ li >
< li >< a class = "menu-item" > Submenu 2</ a ></ li >
</ ul >
</ div >
</ details >
</ div >
</ li >
</ ul >
</ div >
</ details >
</ div >
</ li >
< li >< a class = "menu-item" > Item 3</ a ></ li >
</ ul >
Zobacz kod
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 < ul class = "menu" >
< li >
< a class = "menu-item" >
< svg xmlns = "http://www.w3.org/2000/svg" width = "24" height = "24" viewBox = "0 0 24 24"
fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" >
< path d = "M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z" >
</ path >
</ svg >
</ a >
</ li >
< li >
< a class = "menu-item" >
< svg xmlns = "http://www.w3.org/2000/svg" width = "24" height = "24" viewBox = "0 0 24 24"
fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" >
< path d = "m21 21-4.34-4.34" />
< circle cx = "11" cy = "11" r = "8" />
</ svg >
</ a >
</ li >
< li >
< a class = "menu-item" >
< svg xmlns = "http://www.w3.org/2000/svg" width = "24" height = "24" viewBox = "0 0 24 24"
fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" >
< circle cx = "12" cy = "8" r = "5" />
< path d = "M20 21a8 8 0 0 0-16 0" />
</ svg >
</ a >
</ li >
</ ul >
Zobacz kod
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 < ul class = "menu menu-horizontal" >
< li >
< a class = "menu-item" >
< svg xmlns = "http://www.w3.org/2000/svg" width = "24" height = "24" viewBox = "0 0 24 24"
fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" >
< path d = "M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z" >
</ path >
</ svg >
</ a >
</ li >
< li >
< a class = "menu-item" >
< svg xmlns = "http://www.w3.org/2000/svg" width = "24" height = "24" viewBox = "0 0 24 24"
fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" >
< path d = "m21 21-4.34-4.34" />
< circle cx = "11" cy = "11" r = "8" />
</ svg >
</ a >
</ li >
< li >
< a class = "menu-item" >
< svg xmlns = "http://www.w3.org/2000/svg" width = "24" height = "24" viewBox = "0 0 24 24"
fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" >
< circle cx = "12" cy = "8" r = "5" />
< path d = "M20 21a8 8 0 0 0-16 0" />
</ svg >
</ a >
</ li >
</ ul >
Zobacz kod
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 < ul class = "menu" >
< li >
< a class = "menu-item tooltip tooltip-end" data-tip = "Home" >
< svg xmlns = "http://www.w3.org/2000/svg" width = "24" height = "24" viewBox = "0 0 24 24"
fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" >
< path d = "M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z" >
</ path >
</ svg >
</ a >
</ li >
< li >
< a class = "menu-item tooltip tooltip-end" data-tip = "Search" >
< svg xmlns = "http://www.w3.org/2000/svg" width = "24" height = "24" viewBox = "0 0 24 24"
fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" >
< path d = "m21 21-4.34-4.34" />
< circle cx = "11" cy = "11" r = "8" />
</ svg >
</ a >
</ li >
< li >
< a class = "menu-item tooltip tooltip-end" data-tip = "Profile" >
< svg xmlns = "http://www.w3.org/2000/svg" width = "24" height = "24" viewBox = "0 0 24 24"
fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" >
< circle cx = "12" cy = "8" r = "5" />
< path d = "M20 21a8 8 0 0 0-16 0" />
</ svg >
</ a >
</ li >
</ ul >
Zobacz kod
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 < ul class = "menu menu-horizontal" >
< li >
< a class = "menu-item tooltip" data-tip = "Home" >
< svg xmlns = "http://www.w3.org/2000/svg" width = "24" height = "24" viewBox = "0 0 24 24"
fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" >
< path d = "M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z" >
</ path >
</ svg >
</ a >
</ li >
< li >
< a class = "menu-item tooltip" data-tip = "Search" >
< svg xmlns = "http://www.w3.org/2000/svg" width = "24" height = "24" viewBox = "0 0 24 24"
fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" >
< path d = "m21 21-4.34-4.34" />
< circle cx = "11" cy = "11" r = "8" />
</ svg >
</ a >
</ li >
< li >
< a class = "menu-item tooltip" data-tip = "Profile" >
< svg xmlns = "http://www.w3.org/2000/svg" width = "24" height = "24" viewBox = "0 0 24 24"
fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" >
< circle cx = "12" cy = "8" r = "5" />
< path d = "M20 21a8 8 0 0 0-16 0" />
</ svg >
</ a >
</ li >
</ ul >
Zobacz kod
Menu z ikonami i plakietką (responsywne)
Drzewo plików
< ul class = "menu menu-horizontal" >
< li >< a class = "menu-item" > Item 1</ a ></ li >
< li >
< a class = "menu-item" > Parent</ a >
< ul >
< li >< a class = "menu-item" > Submenu 1</ a ></ li >
< li >< a class = "menu-item" > Submenu 2</ a ></ li >
</ ul >
</ li >
< li >< a class = "menu-item" > Item 3</ a ></ li >
</ ul >
Zobacz kod
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 < ul class = "menu xl:menu-horizontal lg:min-w-max" >
< li >
< a class = "menu-item" > Solutions</ a >
< ul >
< li >< a class = "menu-item" > Design</ a ></ li >
< li >< a class = "menu-item" > Development</ a ></ li >
< li >< a class = "menu-item" > Hosting</ a ></ li >
< li >< a class = "menu-item" > Domain register</ a ></ li >
</ ul >
</ li >
< li >
< a class = "menu-item" > Enterprise</ a >
< ul >
< li >< a class = "menu-item" > CRM software</ a ></ li >
< li >< a class = "menu-item" > Marketing management</ a ></ li >
< li >< a class = "menu-item" > Security</ a ></ li >
< li >< a class = "menu-item" > Consulting</ a ></ li >
</ ul >
</ li >
< li >
< a class = "menu-item" > Products</ a >
< ul >
< li >< a class = "menu-item" > UI Kit</ a ></ li >
< li >< a class = "menu-item" > WordPress themes</ a ></ li >
< li >< a class = "menu-item" > WordPress plugins</ a ></ li >
< li >
< a class = "menu-item" > Open source</ a >
< ul >
< li >< a class = "menu-item" > Auth management system</ a ></ li >
< li >< a class = "menu-item" > VScode theme</ a ></ li >
< li >< a class = "menu-item" > Color picker app</ a ></ li >
</ ul >
</ li >
</ ul >
</ li >
< li >
< a class = "menu-item" > Company</ a >
< ul >
< li >< a class = "menu-item" > About us</ a ></ li >
< li >< a class = "menu-item" > Contact us</ a ></ li >
< li >< a class = "menu-item" > Privacy policy</ a ></ li >
< li >< a class = "menu-item" > Press kit</ a ></ li >
</ ul >
</ li >
</ ul >
Zobacz kod
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 < ul class = "menu lg:menu-horizontal" >
< li >< a class = "menu-item" > Item 1</ a ></ li >
< li >
< div class = "accordion accordion-flush" >
< details open >
< summary > Parent item</ summary >
< div class = "accordion accordion-flush" >
< ul >
< li >< a class = "menu-item" > Submenu 1</ a ></ li >
< li >< a class = "menu-item" > Submenu 2</ a ></ li >
< li >
< div class = "accordion accordion-flush" >
< details open >
< summary > Parent</ summary >
< div class = "accordion-content" >
< ul >
< li >< a class = "menu-item" > item 1</ a ></ li >
< li >< a class = "menu-item" > item 2</ a ></ li >
</ ul >
</ div >
</ details >
</ div >
</ li >
</ ul >
</ div >
</ details >
</ div >
</ li >
< li >< a class = "menu-item" > Item 3</ a ></ li >
</ ul >
Zobacz kod
Używasz kodu Claude'a, kursora lub innego edytora AI?
Cherry MCP na żądanie udostępnia edytorowi AI dokładne nazwy i strukturę klas Menu. Żadnych więcej zajęć z halucynacjami.
Try Cherry MCP