Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [css] identyfikator a klasa
bmL
post
Post #1





Grupa: Zarejestrowani
Postów: 301
Pomógł: 25
Dołączył: 15.07.2007
Skąd: Olsztyn

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


Może głupie pytanie ale:
Jakie aspekty przemawiają za używaniem w swojej aplikacji identyfikatorów a nie klas?


--------------------
Tutaj miał być jakiś mądry tekst. Miał być... No ale jest głupi tekst.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
Cysiaczek
post
Post #2





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Identyfikator wskazuje na jeden konkretny obiekt w dokumencie, natomiast klasa może być używana przez wiele obiektów. Bardzo często używa się obu rozwiązań jednocześnie, a najczęściej decyduje konkretne zapotrzebowanie w danym miejscu.

Pozdrawiam.


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
mike
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Pytanie faktycznie trochę głupie ale nie dlatego, że początkujące czy coś w tym stylu.
Ale pytasz o mechanizmy pomagające sobie na wajem a nie wykluczające.

Stosowanie samych klas jest tak samo złe jak samych identyfikatorów.
Powinno się używać i tego i tego.

Przykład:
Masz stroną, na której linki mają jakiś tam styl (nieważne). Ale na przykład część linków (których jest na pewno więcej niż jeden) powinna mieć inny styl. Dodatkowo jeden z nich w zależności od kontekstu strony powinien być pogrubiony i na czerwono.

  1. <style type="text/css">
  2. a.klasa {
  3. color: #cdcdcd;
  4. background-color: #123;
  5. }
  6.  
  7. a.klasa#identyfikator {
  8. color: #f00;
  9. font-weight: bold;
  10. }
  11.  
  12. <a href="#" class="klasa">link 1</a>
  13. <a href="#" class="klasa">link 2</a>
  14. <a href="#" id="identyfikator" class="klasa">link 3</a>
  15. <a href="#" class="klasa">link 4</a>
  16. <a href="#" class="klasa">link 5</a>
Go to the top of the page
+Quote Post
bmL
post
Post #4





Grupa: Zarejestrowani
Postów: 301
Pomógł: 25
Dołączył: 15.07.2007
Skąd: Olsztyn

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


Cytat(Cysiaczek @ 15.08.2007, 13:10:40 ) *
Identyfikator wskazuje na jeden konkretny obiekt w dokumencie, natomiast klasa może być używana przez wiele obiektów. Bardzo często używa się obu rozwiązań jednocześnie, a najczęściej decyduje konkretne zapotrzebowanie w danym miejscu.

Pozdrawiam.

Nadal nie obrazuje mi to dlaczego miałbym stosować identyfikatory w końcu mogę stosować same klasy.

Cytat(mike @ 15.08.2007, 13:17:03 ) *
Pytanie faktycznie trochę głupie ale nie dlatego, że początkujące czy coś w tym stylu.
Ale pytasz o mechanizmy pomagające sobie na wajem a nie wykluczające.

Stosowanie samych klas jest tak samo złe jak samych identyfikatorów.
Powinno się używać i tego i tego.

Przykład:
Masz stroną, na której linki mają jakiś tam styl (nieważne). Ale na przykład część linków (których jest na pewno więcej niż jeden) powinna mieć inny styl. Dodatkowo jeden z nich w zależności od kontekstu strony powinien być pogrubiony i na czerwono.

  1. <style type="text/css">
  2. a.klasa {
  3. color: #cdcdcd;
  4. background-color: #123;
  5. }
  6.  
  7. a.klasa#identyfikator {
  8. color: #f00;
  9. font-weight: bold;
  10. }
  11.  
  12. <a href="#" class="klasa">link 1</a>
  13. <a href="#" class="klasa">link 2</a>
  14. <a href="#" id="identyfikator" class="klasa">link 3</a>
  15. <a href="#" class="klasa">link 4</a>
  16. <a href="#" class="klasa">link 5</a>

Można to zapisać jeszcze krócej używając samych klas
  1. <?php
  2. <style type="text/css">
  3. a.klasa {
  4. color: #cdcdcd;
  5. background-color: #123;
  6. }
  7.  
  8. a.bred{
  9. color: #f00;
  10. font-weight: bold;
  11. }
  12. </style>
  13.  
  14. <a href="#" class="klasa">link 1</a>
  15. <a href="#" class="klasa">link 2</a>
  16. <a href="#" class="klasa bred">link 3</a>
  17. <a href="#" class="klasa">link 4</a>
  18. <a href="#" class="klasa">link 5</a>
  19. ?>

Wygląda na to, że stosowanie identyfikatorów opłaca mi się tylko wtedy kiedy jestem do tego zmuszony np. jak chcę zrobić jakiś link do danej części strony. Albo na potrzeby skryptu j/s itp.
Proszę, poprawcie mnie jeżeli się mylę.
Pozdrawiam bmL.

Ten post edytował bmL 16.08.2007, 13:22:19


--------------------
Tutaj miał być jakiś mądry tekst. Miał być... No ale jest głupi tekst.
Go to the top of the page
+Quote Post
mike
post
Post #5





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Cytat(bmL @ 15.08.2007, 22:29:48 ) *
Można to zapisać jeszcze krócej używając samych klas
Krócen raptem o kilka znaków.

Nie mniej jednak identyfikatory mają jeszcze dwie ważne zalety:
  • Pomagają ogarnąć logicznie kod. Wiesz że jakiś element jest jeden i powinien być jeden. A jeśli popełnisz błąd walidator Ci o tym powie, często jest to ważne;
  • Identyfikator posiada ogromne znaczenie z perspektywy JavaScript. Znajdź teraz interesujący Cię element tongue.gif Ja to robię getElementById(). Ty będziesz to robił w duo bardziej złożony sposób;
Go to the top of the page
+Quote Post
bmL
post
Post #6





Grupa: Zarejestrowani
Postów: 301
Pomógł: 25
Dołączył: 15.07.2007
Skąd: Olsztyn

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


Cytat(mike @ 16.08.2007, 14:22:55 ) *
Krócej raptem o kilka znaków.
Ale zawsze coś smile.gif No i mogę to zastosować tyle razy ile chcę.

Cytat(mike @ 16.08.2007, 14:22:55 ) *
Nie mniej jednak identyfikatory mają jeszcze dwie ważne zalety:
  • Pomagają ogarnąć logicznie kod. Wiesz że jakiś element jest jeden i powinien być jeden. A jeśli popełnisz błąd walidator Ci o tym powie, często jest to ważne;
Faktycznie, nie myślałem o tym w ten sposób.

Cytat(mike @ 16.08.2007, 14:22:55 ) *
  • Identyfikator posiada ogromne znaczenie z perspektywy JavaScript. Znajdź teraz interesujący Cię element tongue.gif Ja to robię getElementById(). Ty będziesz to robił w duo bardziej złożony sposób;
Racja, doszedłem do tego minute przed tym jak to napisałeś spójrz na daty postów biggrin.gif

Dzięki za wszystkie odpowiedzi trochę sobie uświadomiłem czemu warto stosować identyfikatory smile.gif

Pozdrawiam bmL^^


--------------------
Tutaj miał być jakiś mądry tekst. Miał być... No ale jest głupi tekst.
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 Aktualny czas: 20.08.2025 - 08:58