Φωτογραφία Θανάσης Κακολύρης
CSS RULES
από Θανάσης Κακολύρης - Thursday, 19 May 2011, 10:49 AM
 
1.Καλησπέρα δεν έχω καταλάβει καλά πώς πρέπει να χρησιμοποιούμε το selector type στο παράθυρο new css rule. Ποιά η διαφορά του class, του ID, του TAG και του Compound πρακτικά; Μπορώ να έχω ένα παράδειγμα;

2. Επίσης δεν κατάλαβα γιατί αφού δημιούργησε στο slide 18 τον κανόνα (ID selector) για products (#products) δεν έβαλε κατευθείαν εκεί χρώμα φόντου όπως έκανε και με το "#header" παρα έπρεπε να δημιουργήσει καινούργιο κανόνα (CLASS) για να το επιτύχει αυτό. Δηλαδή στην περίπτωση του "#header" το έκανε με ένα βήμα και στην περίπτωση του "#products" με δυο;

μπερδεμένος
 
Φωτογραφία Ιωάννης Γιαννούκος
Απάντηση: CSS RULES
από Ιωάννης Γιαννούκος - Friday, 20 May 2011, 4:55 AM
 
Καλημέρα Θανάση,

1. Το ID ορίζει τις ιδιότητες ενός και μοναδικού στοιχείου (με ορισμού του attribute ID ενός tag) και το class ομάδων στοιχείων (με ορισμού του attribute class ενός tag). Το compound δεν είναι τίποτα άλλο από συνδυασμός των άλλων selector, δηλαδή ποιο στοιχείο/κλάση/id ΜΕΣΑ σε άλλο θα πρέπει να εφαρμοστεί ο κανόνας. Για παράδειγμα, αν θέλουμε να ορίσουμε τις ιδιότητες όλων των hr που είναι μέσα σε ένα p, ορίζουμε p hr. Δες το forum προηγούμενων αποριών, υπάρχουν αρκετά παραδείγματα, καθώς και τις διαφάνειες 7 και 14.

2. Αυτό είναι θέμα σχεδίασης. Πρώτον, προτιμώ μικρότερους αλλά νοηματικά ξεχωριστούς/γενικούς κανόνες παρά μεγάλους και υπερβολικα εξειδικευμένους. Έτσι, οι μικρότεροι και γενικότεροι κανόνες μπορούν να επαναχρησιμοποιηθούν πιο εύκολα. Δεύτερον, μπορεί η σελίδα να περιέχει δύο και περισσότερους πίνακες, οπότε δεν μας κάνει η χρήση ενός ID (αλλά το compound .products #header μπορεί). Ο selector τύπου κλάση μπορεί να χρησιμοποιηθεί περισσότερες από μία φορές σε μία σελίδα.

Ελπίζω να είμαι κατανοητός!
Φωτογραφία Θανάσης Κακολύρης
Απάντηση: CSS RULES
από Θανάσης Κακολύρης - Friday, 20 May 2011, 12:04 PM
 
Αν κατάλαβα καλά...

1. Το class εφαρμόζεται όπου επιλέξουμε σε όλες τις σελίδες που έχουμε φτιάξει...

2. Το ID αφορά την αλλαγή μόνο ενός συγκεκριμένου στοιχείου (με την ID που θα του ορίσουμε) και μιας μόνο σελίδας...

3. Το COMPOUND αφορά την αλλαγή π.χ. όλα τα tag strong να έχουν χρώμα τυρκουάζ και εφαρμόζεται ταυτόχρονα παντού και σε όλες τις σελίδες...

4. Το selector TAG (redefines an HTML element) ποιά είναι η χρησιμότητά του; Δεν κάνει λίγο πολύ ότι κάνει και το CLASS και το COMPOUND ή όχι;

5. Υπάρχουν css rules τα οποία είναι καλύτερα να τα αποθηκεύουμε στο εξωτερικό αρχείο css (π.χ. CLASS, COMPOUND) και άλλα που πρέπει να είναι εσωτερικά στα αρχεία λόγω του οτι έχουν τοπική σημασία (π.χ. ID, TAG) ή δεν υπάρχει διαχωρισμός και όλα πρέπει να μπαίνουν στο εξωτερικό αρχείο και αν ναι πως καταλαβαίνει το πρόγραμμα ποιά έχουν τοπική σημασία ώστε να κάνει τις σωστές συνδέσεις;

Σε ευχαριστώ πολύ!!!
Φωτογραφία
Απάντηση: CSS RULES
από - Friday, 20 May 2011, 5:26 PM
 
Θανάση καλησπέρα, αν επισκεφτείς την ομάδα συζητήσεων προηγούμενων ετών
με θέμα: class και id θα σου λυθούν πολλές απορίες. Αυτό έκανα κι εγώ γιατί δεν έβγαζα άκρη,,,

e
Φωτογραφία Ιωάννης Γιαννούκος
Απάντηση: CSS RULES
από Ιωάννης Γιαννούκος - Saturday, 21 May 2011, 8:39 AM
 
1. Όχι, αφορά όλα τα στοιχεία που έχουν ορίσει το ίδιο attribute class="kati". Με αυτό τον τρόπο μπορείς για παράδειγμα να ορίσεις τη γραμματοσειρά κάποιων p, div και table στοιχείων, τα οποία όμως "βρίσκονται" στην ίδια κλάση.

2. Μη σε μπερδεύουν οι πολλαπλές σελίδες ενός ιστοτόπου. Η εμβέλεια κάθε κανόνα css εξαρτάται με το αν ορίζεται εξωτερικά (και έχει γίνει link σε αυτό από μία σελίδα) ή εσωτερικά (κανόνες μέσα στην ίδια τη σελίδα και όχι σε ένα εξωτερικό αρχείο). Το id εφαρμόζεται σε ένα μόνο στοιχείο μιας σελίδας. Αυτό δε σημαίνει όμως ότι δεν μπορεί το id να υπάρχει (ένα) σε σελίδα του ιστοτόπου. Σημαίνει ότι μία σελίδα δεν μπορεί να έχει δύο στοιχεία με το ίδιο id.

3. Το compound (ή σύνθετοι κανόνες) εφαρμόζουν κανόνες σε στοιχεία που βρίσκονται μέσα σε στοιχεία. πχ

<tag1>
<tag2 class="c1">
<tag3 id="id1">
keimeno
</tag3>
</tag2>
</tag1>

Μπορείς να ορίσεις ένα compound κανόνα
tag1 tag2 {...} που θα εφαρμόζονται σε όλα τα στοιχεία tag2 που είναι μέσα σε tag1 ή
tag1 .c1 #id1 {...} που εφαρμόζεται σε στοιχεία με id id1 που βρίσκονται σε στοιχεία της κλάσης c1 που βρίσκονται μέσα σε στοιχεία tag1.

4. Ο κανόνας tag εφαρμόζεται σε όλα τα στοιχεία του συγκεκριμένου tag. Το class μπορεί να εφαρμοστεί και σε διαφορετικά tag φτάνει να έχουν την ίδια κλάση. Το compound εφαρμόζεται σε ομάδες εμφωλευμένων, όπως λέγονται, tag (βλ απάντηση 3)

5. Καλό είναι όσο περισσότεροι κανόνες γίνεται να μπαίνουν στο εξωτερικό αρχείο. Έτσι μπορείς με λίγες τροποποιήσεις να πειράξεις την εμφάνιση όλου του ιστοτόπου. προσωπική άποψη:): Εσωτερικούς κανόνες θα χρειαστείς μόνο όταν κάποιος εξωτερικός δε σου κάνει και θέλεις να τον ακυρώσεις. Όπως αναφέρεται και στις διαφάνειες, κατά την εφαρμογή διαφορετικών κανόνων για το ίδιο στοιχείο, εφαρμόζεται ο τελευταίος που έχει οριστεί. Στην περίπτωση μας το εσωτερικό css έχει μεγαλύτερη προτεραιότητα από το εξωτερικό.


Φωτογραφία Θανάσης Κακολύρης
Απάντηση: CSS RULES
από Θανάσης Κακολύρης - Sunday, 22 May 2011, 1:54 PM
 
Σε ευχαριστώ πολύ αν δεν καταλαβαίνω κάτι θα ξαναρωτήσωεγκρίνω