Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Menu w CSS, Dziwny problem w IE 6
Spykaj
post
Post #1





Grupa: Zarejestrowani
Postów: 104
Pomógł: 3
Dołączył: 30.05.2008
Skąd: Białystok

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


Hmmm, normalnie używałem w menu tabel, ale przeczytałem, że lepiej menu się robi w CSS ;d no to spróbowałem i wynikły z tego same problemy (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) oto kod:

  1. <head>
  2. <title>Moje projekty PHP + MySQL</title>
  3. <style type="text/css">
  4. <!--
  5. #menu .border{border-top: black 1px solid; border-left: black 1px solid; padding: 0px margin: 0px;}
  6. #menu .header{font-family: Tahoma; font-weight: bold; font-size: 10pt; border-right: black 1px solid; border-bottom: black 1px solid; color: blue;}
  7. #menu .element{font-family: Tahoma; font-size: 8pt; text-align: left; border-right: black 1px solid; border-bottom: black 1px solid; padding-left: 3px;}
  8. -->
  9. </style>
  10. </head>
  11. <body>
  12.  
  13. <div id="menu">
  14. <div class="border">
  15. <div class="header">Menu</div>
  16. <form action="nieważne">
  17. <div class="element">Link 1</div>
  18. <div class="element">Link 2</div>
  19. <div class="element">Link 3</div>
  20. </form>
  21. </div>
  22. </div>
  23.  
  24. </body>
  25. </html>


W Fx jest wszystko ok, ale IE 6 traktuje <form> i </form> jako tekst (IMG:http://forum.php.pl/style_emoticons/default/sleep.gif) przez co efekt jest niezadowalający. Czy ten kod w ogóle jest dobry ? ;d zastanawiam się w tym przypadku nad powrotem do tabelek ;p ma ktoś jakiś pomysł ja kto poprawić, zmienić ten kod, czy coś ? Najlepiej ktoś, kto się zna. Dzięki z góry.
Go to the top of the page
+Quote Post
Shili
post
Post #2





Grupa: Zarejestrowani
Postów: 1 085
Pomógł: 231
Dołączył: 12.05.2008

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


Nie wiem co chcesz osiągnąć, ale po kolei. Pierwszą rzeczą jest to, że menu buduje się na listach (na przykład ul, u Ciebie divy to nadużycie semantyczne). Druga sprawa jest taka, że forma tam nie powinno być. Form służy do wyświetlania formularzy, a u Ciebie żadnego formularza nie widzę.

  1. <title>Moje projekty PHP + MySQL</title>
  2. <style type="text/css">
  3. <!--
  4. * {padding: 0; margin: 0;}
  5. ul li {list-style-type: none;}
  6. #menu {margin: 10px;}
  7. #menu ul {border-top: black 1px solid; border-left: black 1px solid; padding: 0px margin: 0px;}
  8. #menu ul h4 {font-family: Tahoma; font-weight: bold; font-size: 10pt;color: blue;}
  9. #menu ul li {font-family: Tahoma; font-size: 8pt; text-align: left; border-right: black 1px solid; border-bottom: black 1px solid; padding-left: 3px;}
  10. #menu ul li a {color:#000000; text-decoration: none;}
  11. -->
  12. </head>
  13.  
  14. <div id="menu">
  15.  
  16. <ul>
  17. <li><h4>Menu</h4></li>
  18. <li><a href="#">Link1</a></li>
  19. <li><a href="#">Link2</a></li>
  20. <li><a href="#">Link3</a></li>
  21. </ul>
  22.  
  23. </div>
  24.  
  25. </body>
  26. </html>
To jest semantyczny kod, być może troszkę nadmiarowy css, ale efekt jest albo ten sam, albo bardzo podobny (nie chciało mi się liczyć dokładnie marginesów.

@down
Stworzyłaś (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Ten post edytował Shili 18.07.2008, 19:14:01
Go to the top of the page
+Quote Post
Spykaj
post
Post #3





Grupa: Zarejestrowani
Postów: 104
Pomógł: 3
Dołączył: 30.05.2008
Skąd: Białystok

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


O dzięki, formularza mi się nie chciało całego tworzyć, po prostu mógłby tam być.

U ciebie nie ma tego problemu i tak, czy siak działa.

Bardzo ładny kod stworzyłeś, oczywiście plusik dla ciebie. O to mi chodziło.
Go to the top of the page
+Quote Post
Kreton
post
Post #4





Grupa: Zarejestrowani
Postów: 345
Pomógł: 3
Dołączył: 20.02.2005

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


WTF ? Nie powinnaś przypadkiem <h4> wyrzucic przed samą listę. IMO h4 nijak ma się do składników menu. Jest nagłówkiem.

To tak jakbym napisał: <p><h4>Nagłówek</h4> bla bla bla lubie bzdurzyć</p>
Czyli bez sensu. Może się mylę - przepraszam w takim razie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował Kreton 18.07.2008, 20:29:35
Go to the top of the page
+Quote Post
Shili
post
Post #5





Grupa: Zarejestrowani
Postów: 1 085
Pomógł: 231
Dołączył: 12.05.2008

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


Zrozumiałam po div class="header" że ma być to nagłówek, a skoro nagłówek, na co nazwa wskazuje to trzeba zrobić nagłówek, miast sztucznych tworów. Czemu h4? Można i h6, można h5.

To co napisałeś poniżej faktycznie jest bez sensu, z tego względu że p nie może przyjmować jako dzieci elementów blokowych i tym się różni od li, które jak najbardziej może. Gdyby zamiast p było div miałoby to jak najbardziej sens.

Ten post edytował Shili 18.07.2008, 20:31:55
Go to the top of the page
+Quote Post
Kreton
post
Post #6





Grupa: Zarejestrowani
Postów: 345
Pomógł: 3
Dołączył: 20.02.2005

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


Źle mnie zrozumialaś.
Kod
<ul>
<li><h4>Menu</h4></li>
<li><a href="#">Link1</a></li>
<li><a href="#">Link2</a></li>
<li><a href="#">Link3</a></li>
</ul>

Chodzi mi o ten fragment kodu. Nieważne czy jest tam h3 czy h5. Zastanawia mnie miejsce h4 w środku listy. Z logicznego punktu widzenia ( mojego ) to jest bez sensu bo <hx> służy do czego innego. Brnąc dalej, w moim mniemaniu elementy w liście na tym samym poziomie mają jadnakową wartość co już dyskfalifikuje jakiekolwiek hx. Czyli teraz w ogromnym skruciem, imo h4 powinno być przed listą. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował Kreton 18.07.2008, 20:41:07
Go to the top of the page
+Quote Post
Shili
post
Post #7





Grupa: Zarejestrowani
Postów: 1 085
Pomógł: 231
Dołączył: 12.05.2008

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


Uważam, że jak najbardziej może być przed listą i z tym trudno się nie zgodzić (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) ale nie musi. W3C z jakiegoś powodu zezwala na umieszczanie nagłówków, moim zdaniem wie co robi.

hx służy do nagłówków (co w końcu nie jest dziwne), element listy również może być nagłówkiem, ba, każdy element może być oddzielnym nagłówkiem (można tutaj rozmawiać o sensowności takiego rozwiązania, jednak jest to rozwiązanie poprawne z punktu widzenia gramatyki języka przynajmniej xhtml - nie wiem jak definiuje to html).

Jeśli chodzi o wartość list i ich poziom - idąc tym samym tropem w liście nie powinien się pojawić również strong, em czy inne znaczniki wskazujące na większą wartość treści (chociaż fakt, hx wkazuje najbardziej (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) )

Także to już naprawdę jak kto woli, ale podążając za consortium i jedno i drugie jest poprawne składniowo.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 05:15