Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Separator (pionowa kreska rozdzielająca nazwy w menu)
#1
Witam

Męczę się już z tym jakiś czas, jak zrobić w css-ie pionową kreskę, która rozdzielałaby poszczególne elementy menu poziomego Start, kreska pionowa, o firmie kreska pionowa itp. Nie mogę nigdzie znaleźć przykładu.
Odpowiedz
#2
sposobów masz kilka, dwa najpopularniejsze, są takie:
1. Każdy element w poziomym menu zamykasz w jakimś pudełku, a potem temu pudełku nadajesz jednostronny border.
HTML
Kod:
<div id="menu">
<span id="menu1">menu1</span><span id="menu2">menu2</span><span id="menu3">menu3</span>
</div>
CSS
Kod:
#menu1
{
border: none;
}
#menu2, menu3
{
border-left: thin solid #000000;
border-left-width: 1px;
}

Druga metoda - robisz sobie obrazek wysoki na piksel (jeśli chcesz mieć linię oddzielającą jendolitą) lub na dwa (jeśli chcesz mieć kropkowaną) i szeroki na długość elementu menu. Zamalowujesz najbardziej skrajny piksel na kolor który chcesz, a potem - ustawiasz w css taki obrazek jako tło dla elementu menu, z powtarzaniem w osi Y.

Może mi się wydaje, ale ten temat chyba się już pojawił na tym forum...
"Kod ma być koszerny!" [Obrazek: 106.gif]
Odpowiedz
#3
Wielkie dzięki. sposób super działa. tylko chyba z tym borderem odpada bo chciałbym, żeby te separatory były tylko pomiędzy elementami menu,

Start separator O firmie

z border left lub right dodatkowo są na zewnątrz elementu menu

separator Start separator O firmie separator


Szukałem na różnych forach ale nie natrafiłem dlatego napisałem tego posta.
Odpowiedz
#4
dlatego Ci napisałem, żebyś każdy z elementów menu wstawił w osobny pojemnik, np. <span>, nadał każdemu id i dał bordera tylko tym elementom, które są w środku. Więc jeśli masz coś takiego - Start | O firmie | Sklep | Kontakt | Pomoc, to każdy z nich zamykasz w <span> o innym id.
Kod:
<div id="menu">
<span id="menu1">Start</span><span id="menu2">O firmie</span><span id="menu3">Sklep</span><span id="menu4">Kontakt</span><span id="menu5">Pomoc</span>
</div>
Kod:
#menu, #menu1
{
border:none;
}
#menu2, #menu3, #menu4, #menu5
{
border-left: thin solid #000000,
border-left-width: 1px;
}
W ten sposób masz separatory tylko pomiędzy elementami menu, a nie również na jego końcach.
"Kod ma być koszerny!" [Obrazek: 106.gif]
Odpowiedz
#5
A jeśli poszczgólne elementy menu mam wyciągane z bazy, jak wtedy ustawić styl dla każdego z osobna?
Odpowiedz
#6
pętla robisz zmienną $i która przed wykonaniem pętli jeszcze raz zostanie zwiększona o 1

$i ++;

I potem w CSSie -> menu1, menu2, menu3, menu4, menu5 itd.
Odpowiedz
#7
Wielkie dzięki, już mam efekt, który chciałem.Big Grin
Odpowiedz


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  problem z tłem pod menu loose 1 3,157 06-07-2017, 20:00
Ostatni post: loose
  problem z menu p410 10 10,359 18-06-2017, 18:34
Ostatni post: lemans88
  CSS dla menu i problem z selektorami neferith 4 5,269 30-06-2016, 00:58
Ostatni post: Brain23
  MENU - poważny problem wysokości! asus 0 2,539 05-12-2014, 23:34
Ostatni post: asus
  Trzypoziomowe menu - problem rejcz 3 5,677 25-01-2014, 17:16
Ostatni post: Kartofelek

Skocz do:


Użytkownicy przeglądający ten wątek:
Sponsorzy i przyjaciele
SeoHost.pl