Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [CSS] wyśrodkowanie listy
egger
post 25.02.2010, 01:34:35
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 25.02.2010

Ostrzeżenie: (0%)
-----


Witam. Chcę, aby lista gornemenu była wyśrodkowana i wyświetlana w pozycji poziomej.

index:
  1. <div id="gornemenu">
  2. <ul class="gornemenu_lista">
  3. <li><a href="?">GŁÓWNA</a></li>
  4. <li>|</li><li><a href="?strona=opinie">OPINIE KLIENTÓW</a></li>
  5. <li>|</li><li><a href="?strona=ofirmie">O FIRMIE</a></li>
  6. <li>|</li><li><a class="active" href="?strona=dojazd">DOJAZD</a></li></ul>
  7. </div><!-- koniec gornemenu -->

style:
  1. ul.gornemenu_lista li {
  2. font-family: book antiqua, sans serif, times new roman;
  3. font-size: 8pt;
  4. letter-spacing: 1pt;
  5. list-style: none none inside;
  6. margin : 0px 5px;
  7. padding: 0px;
  8. float: left;
  9. border: 1px solid white;
  10. text-align: center;
  11. }


Tak to się wyświetla (specjalnie dodałem marginesy):

Widać, że jest przesunięta w lewo.
Próbowałem już chyba wszystkiego, nie daję rady ;(
Go to the top of the page
+Quote Post
krzysztof_kf
post 25.02.2010, 01:38:19
Post #2





Grupa: Zarejestrowani
Postów: 1 135
Pomógł: 158
Dołączył: 19.03.2009
Skąd: Toruń

Ostrzeżenie: (0%)
-----


Kod
ul {
        margin: 0 0 0 50px;
        }
        

li {
    font-family: book antiqua, sans serif, times new roman;
    font-size: 8pt;
    letter-spacing: 1pt;
    list-style: none none inside;
    margin : 0 5px;
    padding: 0px;
    float: left;
    border: 1px solid black;
    text-align: center;
}



</style>
<div id="gornemenu">
<ul>
<li><a href="?">GŁÓWNA</a></li>
<li>|</li><li><a href="?strona=opinie">OPINIE KLIENTÓW</a></li>
<li>|</li><li><a href="?strona=ofirmie">O FIRMIE</a></li>
<li>|</li><li><a class="active" href="?strona=dojazd">DOJAZD</a></li></ul>
</div><!-- koniec gornemenu -->


Ten post edytował krzysztof_kf 25.02.2010, 01:51:31
Go to the top of the page
+Quote Post
egger
post 25.02.2010, 03:05:16
Post #3





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 25.02.2010

Ostrzeżenie: (0%)
-----


Cytat(krzysztof_kf @ 25.02.2010, 01:38:19 ) *
Kod
ul {
        margin: 0 0 0 50px;
        }

Tylko właśnie nie chodzi o to, aby ta lista była przytwierdzona ma stałe na lewego boku, ale żeby była wyśrodkowana w divie w którym się znajduje, żebym miał np. możliwość dodawania elementów menu bez ingerencji w css...

Sztuczki w stylu:
  1. margin: 0 auto;
  2. text-align: center;

Nie chcą działać w tym przypadku...
Go to the top of the page
+Quote Post
mortus
post 25.02.2010, 08:29:55
Post #4





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

Ostrzeżenie: (0%)
-----


Może spróbuj
Kod
#gornemenu {
     text-align: center;
}

EDIT:
Widzę, że już próbowałeś... hmm...

Ten post edytował mortus 25.02.2010, 08:42:26
Go to the top of the page
+Quote Post
thek
post 25.02.2010, 09:18:13
Post #5





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Bo centrowanie marginem można robić jedynie dla elementów blokowych. Dlatego margin: 0 auto musisz zrobić dla gornemenu_lista, a nie dla poszczególnych li czy całego gornemenu, które to zawiera dopiero ową listę. No i najważniejsze... By można było tak zrobić, div o id górnemenu MUSI mieć określoną szerokość, bo inaczej przeglądarka nie potrafi w locie obliczyć marginesu po obu stronach dla UL (a może to właśnie UL miało mieć określona szerokość? Pamięć ludzka jest ułomna winksmiley.jpg Ale masz co sprawdzić dzięki temu sam... ), a wtedy margin: 0 auto nie zadziała niestety. Przetestuj to sobie raz nadając temu div szerokość, a raz ja usuwając winksmiley.jpg

Ten post edytował thek 25.02.2010, 09:28:45


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post
egger
post 25.02.2010, 18:50:53
Post #6





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 25.02.2010

Ostrzeżenie: (0%)
-----


Zrobiłem tak jak napisałeś, bez skutku...
Wygląda to tak jakby całe UL miało jakiś ukryty margin left...

  1. #gornemenu {
  2. width: 694px;
  3. margin: 0 0;
  4. padding: 0 0;
  5. ul {
  6. margin: 0 auto;
  7. }
  8. li {
  9. font-family: 'book antiqua', 'sans serif', 'times new roman';
  10. font-size: 19px;
  11. letter-spacing: 1pt;
  12. list-style: none none inside;
  13. margin : 0 5px;
  14. padding: 0px;
  15. float: left;
  16. border: 1px solid white;
  17. text-align: center;
  18. text-transform: uppercase;
  19.  
  20. }
Go to the top of the page
+Quote Post
mortus
post 25.02.2010, 19:19:20
Post #7





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

Ostrzeżenie: (0%)
-----


Musi być albo:
Kod
#gornemenu {
    width: 694px;
    margin: 0 auto;
}
albo
Kod
ul {
     width: 694px;
     margin: 0 auto;
}

Przy czym wyśrodkowany zostanie cały blok menu (ul), natomiast pozycje (li) nadal będą przesunięte do lewej strony tego bloku!
Go to the top of the page
+Quote Post
egger
post 25.02.2010, 21:08:29
Post #8





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 25.02.2010

Ostrzeżenie: (0%)
-----


czyli nie da się zrobić tak, żeby ul nie miał ustalonej szerokości?
Go to the top of the page
+Quote Post
mortus
post 25.02.2010, 21:16:28
Post #9





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

Ostrzeżenie: (0%)
-----


Nie da, już od paru lat próbuję i nie wychodzi. Ale jak znajdę sposób, to na pewno dam znać.
Go to the top of the page
+Quote Post
egger
post 25.02.2010, 23:11:31
Post #10





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 25.02.2010

Ostrzeżenie: (0%)
-----


Ok, dzięki.

Wyśrodkowanie UL dołączam do listy rzeczy, które powinny być dostępne w CSS (m. in. zmienne).
Jak widać w CSS nie da się zrobić wszystkiego.

Temat można zamknąć.
Go to the top of the page
+Quote Post
t4keda
post 13.07.2010, 11:25:15
Post #11





Grupa: Zarejestrowani
Postów: 57
Pomógł: 10
Dołączył: 14.10.2009

Ostrzeżenie: (0%)
-----


Mam nadzieję, że wybaczycie mi wskrzeszenie tematu po prawie 5 miesiącach, ale ja z rozwiązaniem przychodzę winksmiley.jpg Nie wiem czy problem został już rozwiązany czy też nie (w tym temacie jeszcze nie), ale jako że przesiedziałem nad tym trochę czasu, a mi się udało to się podzielę odkryciem:

  1. <ul id="paging">
  2. <li><a href="p1">1</a></li>
  3. <li><a href="p2">2</a></li>
  4. <li><a href="p3">3</a></li>
  5. <li><a href="p4">4</a></li>
  6. </ul>


  1. #paging{
  2. display: block;
  3. clear: both;
  4. width: 950px;
  5. text-align: center;
  6. }
  7.  
  8. #paging li{
  9. display: inline-block;
  10. }
  11.  
  12. #paging li a{
  13. display: block;
  14. margin-right: 2px;
  15. padding: 0px 5px 3px 5px;
  16. border: #888888 1px solid;
  17. }


Efekt możecie zobaczyć tu: http://www.t4keda.pl (na dole strony)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 6.05.2025 - 07:50