Μάθημα : Εφαρμογές Πληροφορικής Α Λυκείου

Κωδικός : EL771156

EL771156 - ΜΙΧΑΗΛ ΔΙΓΚΑΣ

Ενότητες μαθήματος

CSS - μάθημα 1

Εισαγωγή στην CSS

CSS properties and values

Προσθήκη Στυλ (style property)

Παρότι με την HTML μπορούμε να δημιουργήσουμε σελίδες με πολλά στοιχεία δεν μπορούμε να καθορίσουμε πως οι σελίδες αυτές εμφανίζονται στον browser, και πολύ περισσότερο δεν μπορούμε να καθορίσουμε στοιχεία εμφάνισης. Για αυτό δημιουργήθηκε η ιδιότητα style. Για να δούμε ένα μικρό παράδειγμα, στο οποίο θέλουμε κάποια παράγραφος να έχει χρώμα γραμματοσειράς κοκκίνο:

<div style="color: red;">

<p> Δοκιμαστική παράγραφος με χρώμα γραμματοσειράς κόκκινο.</p>

</div>

<p>  Δεύτερη παράγραφος</p

Δοκίμασέ το

Φυσικά θα μπορούσαμε να βάλουμε την ιδιότητα style μέσα στην ετικέτα της παραγράφου (<p> tag) οπότε η ρύθμιση του χρώματος της γραμματοσειράς θα εφαρμόζονταν σε όλη την παράγραφο. Φυσικά οι ετικέτες <div> και <span> μας δίνουν την δυνατότητα να ορίζουμε το στυλ σε μία ενότητα είτε σε block level (δηλαδή μια ενότητα από tags) είτε σε inline (σε ένα κομμάτι κειμένου μέσα σε ένα tag). Είχαμε δει στην προηγούμενη ενότητα μερικές από τις ιδιότητες που μπορούν να χρησιμοποιηθούν για το style. Η ανάγκη ομαδοποίησης της εμφάνισης των στοιχείων μιας ιστοσελίδας, (για παράδειγμα όλα τα κουμπιά σε φόρμες σε όλες τις σελίδες μιας ιστοσελίδας να είναι ομοιόμορφα κοκ) οδήγησε στην ανάπτυξη της CSS.

 

Γενικά για την CSS

CSS σημαίνει Cascading Style Sheets και είναι στυλ που μπορούμε να ορίσουμε για τις HTML σελίδες.

Γράφοντας τις σελίδες μας μόνο με HTML κώδικα, μπορούμε να ορίσουμε το χρώμα και το μέγεθος του κειμένου αλλά και άλλων στοιχείων της σελίδας (όπως πίνακες, links, λίστες κτλ). Για να αλλάξουμε το χρώμα κάποιου κειμένου ή το χρώμα ενός πίνακα, θα πρέπει να βρούμε το χρώμα αυτό μέσα στον κώδικα και να το αλλάξουμε. Η διαδικασία αυτή μπορεί να φαντάζει εύκολη όταν έχουμε να διαχειριστούμε μια μόνο σελίδα, αλλά ένα site αποτελείται από δεκάδες σελίδες τις οποίες χρειάζεται να διαχειριζόμαστε εύκολα και γρήγορα.

Φανταστείτε, για παράδειγμα, πόσο χρονοβόρο θα είναι αν θελήσουμε κάποια στιγμή να αλλάξουμε τα χρώματα στο κύριο μενού του site μας, το οποίο επαναλαμβάνεται σε όλες τις σελίδες. Σε μια τέτοια περίπτωση θα χρειαζόταν να ανοίγουμε κάθε σελίδα του site και να αλλάζουμε τα χρώματα του φόντου και των links του μενού, διαδικασία που εκτός από χρονοβόρα είναι και κουραστική.

Με την χρήση CSS μπορούμε να ορίζουμε χρώματα και μεγέθη οργανωμένα σε στυλ και έπειτα να εφαρμόζουμε τα στυλ αυτά στα στοιχεία των σελίδων του site μας. Με αυτόν τον τρόπο, κάθε φορά που αλλάζουμε το χρώμα ενός στυλ, αλλάζει το χρώμα όλων των στοιχείων που έχουν αναφορά στο στυλ αυτό. Έτσι αν έχουμε ορίσει ένα στυλ για το κύριο μενού του site, τότε θα χρειάζεται να αλλάξουμε το χρώμα του στυλ αυτού και αυτόματα θα εφαρμοστεί σε όλες τις σελίδες.

Εκτός από την ευκολία στην διαχείριση ενός site, ένα άλλο σημαντικό πλεονέκτημα της χρήσης CSS στις σελίδες είναι ο "καθαρότερος" κώδικας, χωρίς πολλές ιδιότητες στις ετικέτες οι οποίες τον κάνουν δυσανάγνωστο. Επιπλέον κάνει γρηγορότερη την πλοήγηση καθώς το αρχείο, μέσα στο οποίο ορίζονται τα στυλ, "διαβάζεται" από τον browser μόνο μια φορά και έπειτα αποθηκεύεται στην cache memory, μειώνοντας έτσι το μέγεθος της πληροφορίας που γίνεται download από τους browsers.

 

Εισαγωγή

 

Τι είναι CSS

CSS σημαίνει Cascading Style Sheets και είναι στυλ που μπορούμε να ορίσουμε για τις HTML σελίδες. Με τα στυλ ορίζουμε το χρώμα, το μέγεθος της γραμματοσειράς, την γραφή (bold, underline, κτλ.), το χρώμα του φοντου, τις διαστάσεις, την τιμή padding και μια σειρά από άλλες ιδιότητες των στοιχείων μιας ιστοσελίδας.

Τι είναι στοιχείο της σελίδας;

Στοιχείο είναι ένα οποιοδήποτε μέρος της HTML σελίδας, όπως: μια εικόνα, μια παράγραφος, μια λίστα, μια επιλογή μιας λίστας, μια επικεφαλίδα, ένα κείμενο ή μια λέξη που βρίσκεται μέσα σε ετικέτες διαμόρφωσης κτλ. Την λέξη στοιχείο θα την συναντήσετε πολύ συχνά σ' αυτήν την Σειρά Μαθημάτων, καθώς τα στυλ CSS εφαρμόζονται στα στοιχεία της σελίδας.

Γιατί να χρησιμοποιήσουμε CSS;

Η χρήση CSS κάνει πολύ εύκολη την διαχείριση της εμφάνισης των σελίδων μας. Για παράδειγμα, αν σε μια ιστοσελίδα, χωρίς χρήση CSS, θέλω να αλλάξω το χρώμα του φόντου σε όλες τις επικεφαλίδες όλων των πινάκων θα πρέπει να πηγαίνω σε κάθε μια επικεφαλίδα και να ορίζω το χρώμα που επιθυμώ αλλάζοντας κάθε φορά την τιμή της ιδιότητας bgcolor των ετικετών <th>. Ενώ σε μια σελίδα με χρήση CSS θα χρειαστεί να αλλάξω το χρώμα αυτό μια μόνο φορά και αυτό θα εφαρμοστεί για όλες τις επικεφαλίδες των πινάκων της σελίδας. Παρόμοια μπορώ να ορίσω στυλ, όχι μόνο για στοιχεία μιας σελίδας, αλλά για στοιχεία όλων των σελίδων του Site μου.

Φανταστείτε να μπορείτε να αλλάζετε το στυλ του οριζόντιου μενού του Site σας, το οποίο επαναλαμβάνεται σε όλες τις σελίδες, με μόνο μια κίνηση. Δεν είναι φανταστικό;
 

Ορισμός των στυλ

Υπάρχουν τρεις τρόποι να ορίσουμε στυλ σε μια σελίδα:
1. ορισμός των στυλ μέσα στην σελίδα (Internal Style Sheet)
2. ορισμός των στυλ σε εξωτερικό αρχείο (External Style Sheet)
3. ορισμός στυλ μέσα στις ετικέτες (οπως έχουμε δει)

1. Ορισμός των στυλ μέσα στην σελίδα (Internal Style Sheet)

Ο πρώτος τρόπος είναι να ορίσουμε το στυλ στο τμήμα HEAD της σελίδας χρησιμοποιώντας την HTML ετικέτα <style>, όπως ο παρακάτω κώδικας:
 
<html>
<head>
<title>Δοκίμασε το</title>
<meta content="text/html; charset=iso-8859-7" />

<style type="text/css">
body {
background-color: blue;
}
</style>
 
</head>

<body>
Κείμενο...
</body>
</html>
 
Μέσα στην ετικέτα <style> γράφουμε τα στυλ που θα εφαρμοστούν στην σελίδα. Στο παραπάνω παράδειγμα λέμε ότι η ετικέτα <body>  θα έχει στην ιδιότητα style το χρώμα του background μπλε.

Δοκίμασε το
 

2. Ορισμός των στυλ σε εξωτερικό αρχείο (External Style Sheet)

Ο δεύτερος τρόπος είναι να δημιουργήσουμε ένα εξωτερικό αρχείο στυλ με επέκταση .css στο οποίο γράφουμε τα στυλ που θέλουμε το ένα κάτω απο το άλλο. Η σύνδεση του εξωτερικού αρχείου στυλ και της σελίδας HTML γίνεται με την χρήση της HTML ετικέτας <link> στο τμήμα HEAD της HTML σελίδας, όπως στον παρακάτω κώδικα. Η ετικέτα <link> εισάγει στην σελίδα τα στυλ που βρίσκονται στο εξωτερικό αρχείο .css:
 
<html>
<head>
<title>Δοκίμασε το</title>
<meta content="text/html; charset=iso-8859-7" />
<link type="text/css" rel="STYLESHEET" href="mystyle.css" />
</head>

<body>
Κείμενο...
</body>
</html>

Με τον δεύτερο τρόπο μπορούμε να εισάγουμε τα στυλ, που περιέχονται σε ένα αρχείο .css, μέσα σε όσες σελίδες html επιθυμούμε, δημιουργώντας έτσι ένα ενιαίο στυλ για τις σελίδες αυτές. Παρακάτω θα δοκιμάσουμε στην πράξη πως λειτουργεί αυτός ο τρόπος ορισμού στυλ, χρησιμοποιώντας ένα αρχείο .css, το οποίο περιέχει ένα στυλ, και δύο αρχεία .html, τα οποία κάνουν εισαγωγή το εξωτερικό αρχείο .css.

Αποθηκέψτε τα παρακάτω τρία αρχεία σε έναν φάκελο στον υπολογιστή σας:

to_diko_mou_style.css
selida1.html
selida2.html

Έπειτα ανοίξτε με τον web browser σας τα δύο αρχεία html (είτε σε δύο διαφορετικά παράθυρα, είτε σε δύο διαφορετικά tabs του browser). Θα παρατηρήσετε ότι και οι δύο σελίδες έχουν χρώμα φόντου μπλε. Ανοίξτε τώρα το αρχείο to_diko_mou_style.css με το Σημειωματάριο (Notepad) των Windows, στο παράθυρο του οποίου πρέπει να βλέπετε τον παρακάτω κώδικα:
 
body {
background-color: blue;
}
 
Στον κώδικα αυτόν αλλάξτε το χρώμα blue σε οποιοδήποτε άλλο (μπορείτε να χρησιμοποιήσετε και τιμές RGB των χρωμάτων) και αποθηκέψτε το αρχείο. Επιστρέψτε στο παράθυρο του browser σας και κάντε ανανέωση (reload) και τις δύο σελίδες που ανοίξατε. Αν όλα πήγαν καλά θα πρέπει να άλλαξε το χρώμα του φόντου και των δύο σελίδων.

Στο παράδειγμα αυτό, το εξωτερικό αρχείο .css περιέχει μόνο ένα στυλ, το οποίο αναφέρετε στο χρώμα του φόντου της σελίδας. Θα μπορούσαμε στο αρχείο αυτό να προσθέταμε και άλλα στυλ, όπως το χρώμα, την γραμματοσειρά και το μέγεθος των κειμένων που βρίσκεται μέσα στις ετικέτες <em> και </em> ή το χρώμα και το μέγεθος των πλαισίων ( borders) των πινάκων κτλ., αποκτώντας έτσι την δυνατότητα της ομαδικής διαχείρισης πολλών σελίδων.

Η διαφορά μεταξύ του πρώτου και του δεύτερου τρόπου ορισμού στυλ είναι ότι στον πρώτο τρόπο τα στυλ που ορίζονται μέσα στις ετικέτες <style> και </style> εφαρμόζονται μόνο στην σελίδα στην οποία ορίζονται αυτά, ενώ στο δεύτερο τρόπο τα στυλ που ορίζονται στο εξωτερικό αρχείο .css εφαρμόζονται σε όλες τις σελίδες που εισάγουν αυτό το εξωτερικό αρχείο με την ετικέτα <link>
 

3. Ορισμός στυλ μέσα στις ετικέτες

Μπορούμε να ορίσουμε στυλ στις ετικέτες που επιθυμούμε, χρησιμοποιώντας την κοινή ιδιότητα style της HTML. Η ιδιότητα style μπορεί να μπει σχεδόν σε όλες τις HTML ετικέτες της ενότητας <body>. Με αυτόν τον τρόπο όμως χάνουμε το μεγάλο πλεονέκτημα της CSS, δηλαδή αυτό της εύκολης διαχείρισης των στυλ των σελίδων μας, καθώς στην περίπτωση αυτή το στυλ εφαρμόζεται μόνο στην ετικέτα στην οποία ορίζεται και πουθενά αλλού. Μην χρησιμοποιείτε συχνά τον τρόπο αυτό, ιδιαίτερα σε περιπτώσεις που ξέρετε ότι το στυλ θα το χρησιμοποιήσετε και σε κάποιο άλλο σημείο του site.

Σύνταξη των στυλ

 

Στην ενότητα αυτή θα δούμε τους τρόπους σύνταξης των στυλ. Οι τρόποι αυτοί έχουν να κάνουν με την σύνδεση των HTML ετικετών και των CSS στυλ. Γενικά μπορούμε να ορίσουμε στυλ για:

  • συγκεκριμένες ετικέτες
  • ετικέτες που περιέχουν την ιδιότητα class, η τιμή της οποίας χρησιμοποιείται στα στυλ ώστε αυτά να εφαρμοστούν μόνο στις ετικέτες που έχουν την ίδια τιμή στην class
  • ετικέτες που περιέχουν την ιδιότητα id, η τιμή της οποίας χρησιμοποιείται στα στυλ ώστε αυτά να εφαρμοστούν μόνο στις ετικέτες που έχουν την ίδια τιμή στην id


Η γενική σύνταξη ενός στυλ αποτελείται από τρία στοιχεία:

  • τον Επιλογέα (selector),
  • τις Ιδιότητες (attributes) του επιλογέα και
  • τις Τιμές (values) των Ιδιοτήτων του επιλογέα

η διάταξη των οποίων είναι η παρακάτω:

επιλογέας {
ιδιότητα-1: τιμή;
ιδιότητα-2: τιμή;
...
ιδιότητα-ν: τιμή;
}

Ο Επιλογέας συνήθως είναι μια ετικέτα της HTML στην οποία θέλουμε να εφαρμόσουμε το στυλ. Οι Ιδιότητες είναι ιδιότητες της CSS οι οποίες προσθέτουν διάφορα χαρακτηριστικά στις ετικέτες τις οποίες εφαρμόζονται τα στυλ. Μια Ιδιότητα μπορεί να έχει μια ή περισσότερες Τιμές, σύμφωνα με τους κανόνες του προτύπου της CSS.

Όπως θα δούμε παρακάτω, στην θέση του Επιλογέα δεν τοποθετούμε μόνο ετικέτες, αλλά και άλλα πράγματα τα οποία και θα δούμε αναλυτικά. Ο Επιλογέας "δείχνει" σε ποιες ετικέτες θα εφαρμοστεί ένα στυλ.
em {
color: blue;
font-family: Arial;
}
Αλλάξτε το χρώμα και την γραμματοσειρά του στυλ της ετικέτας <em> το οποίο ορίζεται στο τμήμα <head> της σελίδας
Το παραπάνω στυλ έχει σαν Επιλογέα την ετικέτα <em> και εφαρμόζεται σε όλες τις ετικέτες <em> ορίζοντας το χρώμα μπλε και την γραμματοσειρά Arial για το κείμενο που βρίσκεται ανάμεσα στις ετικέτες <em> και </em>

Και για να το συνδέσουμε με την προηγούμενη ενότητα αναφέρω ότι: αν το στυλ αυτό βρίσκεται σε ένα εξωτερικό αρχείο, τότε θα εφαρμοστεί σε όλες τις ετικέτες <em> οι οποίες βρίσκονται στις σελίδες που εισάγουν αυτό το εξωτερικό αρχείο στυλ. Αν το στυλ βρίσκεται στο τμήμα HEAD μιας σελίδας, τότε θα εφαρμοστεί σε όλες τις ετικέτες <em> της σελίδας αυτής

Παράδειγμα 2
p {
font-family: "Courier New";
}
 
Αλλάξτε την γραμματοσειρα του στυλ της ετικέτας <p>
 
Το παραπάνω στυλ (που έχει Επιλογέα την ετικέτα <p>) εφαρμόζεται στις ετικέτες <p> και ορίζει την γραμματοσειρά του κειμένου που βρίσκεται ανάμεσα στις ετικέτες <p> και </p>.

Αν η Τιμή μιας Ιδιότητας, στον ορισμό ενός στυλ, περιέχει κενά ανάμεσα της, τότε την τοποθετούμε μέσα σε διπλά εισαγωγικά, όπως κάνουμε στην τιμή "Courier New".

Παράδειγμα 3
p {
font-family: "Courier New";
color: #FF3333;
text-align: center;
}
 
Αλλάξτε το στυλ της ετικέτας <p>
 
Σε ένα στυλ μπορούμε να προσθέσουμε όσες Ιδιότητες του Επιλογέα επιθυμούμε. Το παραπάνω στυλ ορίζει την γραμματοσειρά (font-family), το χρώμα (color) και την στοίχιση (text-align) του κειμένου που βρίσκεται ανάμεσα στις ετικέτες <p> και </p>.

Στις επόμενες ενότητες θα μάθουμε όλες τις Ιδιότητες και τις διαθέσιμες Τιμές που αυτές μπορούν να πάρουν.

Ομαδοποίηση των Επιλογέων

Σύνταξη:
 
ετικέτα1, ετικέτα2, ετικέτα3, ..., ετικέτα-ν {
ιδιότητα: τιμή;
}
 
Έχουμε την δυνατότητα να ορίσουμε το ίδιο στυλ για περισσότερες από μια HTML ετικέτες. Αυτό μπορούμε να το πετύχουμε τοποθετώντας στην θέση του Επιλογέα τις ετικέτες χωρίζοντας τες με κόμμα. Παράδειγμα:
 
p,td,th {
font-family: "Courier New";
color: #FF3333;
text-align: center;
}
 
Αλλάξτε το στυλ των ετικετών <p> και <td> και <th>
 
Το παραπάνω στυλ θα εφαρμοστεί στις ετικέτες <p><td> και <th> της σελίδας
 

Σύνταξη στυλ με την χρήση της ιδιότητας class στον Επιλογέα

Σύνταξη:
 
ετικέτα.τιμή_της_ιδιότητας_class {
ιδιότητα: τιμή;
}
 
Μπορούμε να ορίσουμε διαφορετικά στυλ για ίδιες ετικέτες χρησιμοποιώντας για Επιλογέα το όνομα της ετικέτας μαζί με την τιμή που περιέχει η ιδιότητα class της ετικέτας. Την κοινή ιδιότητα class της HTML μπορούμε να την προσθέσουμε σε όλες τις ετικέτες δίνοντας σε αυτές ένα όνομα, της επιλογής μας, το οποίο μπορεί να χρησιμοποιηθεί σαν αναφορά σε κάποιο στυλ.

Αυτός ο τρόπος σύνταξης είναι ο περισσότερο χρησιμοποιούμενος, καθώς μας δείνει την ευελιξία να διαχωρίσουμε ίδιες ετικέτες μεταξύ τους και να εφαρμόσουμε σε αυτές διαφορετικά στυλ.

Παράδειγμα:
 
<html>
<head>
<title>Δοκίμασε το</title>
<meta content="text/html; charset=iso-8859-7" />

<style type="text/css">
em.idiotites
 {

font-size: 12px;
FONT-FAMILY: Arial, Helvetica, sans-serif;
color: #228B22;
font-weight: bold;
TEXT-DECORATION: none;
}

em.times {
font-size: 12px;
FONT-FAMILY: Arial, Helvetica, sans-serif;
color: #FFA07A;
font-weight: bold;
TEXT-DECORATION: none;
}
</style>
</head>

<body>
Η ετικέτα &lt;ul&gt; εισάγει μια μη αριθμημένη λίστα στην σελίδα μας. Το &lt;ul&gt; είναι τα δύο πρώτα γράμματα από το <em>Unordered List</em>. Η ετικέτα &lt;li&gt; προσθέτει γραμμές στην λίστα. Η ιδιότητα <em class="idiotites">type</em> της ετικέτας &lt;ul&gt; ορίζει το σύμβολο που μπαίνει μπροστά από κάθε γραμμή της λίστας. Οι τιμές που παίρνει η ιδιότητα <em class="idiotites">type</em> είναι οι εξής:
<em class="times">disc</em>, <em class="times">circle</em>, <em class="times">square</em>
</body>
</html>
 
Το στυλ em.idiotites θα εφαρμοστεί σε όλες τις ετικέτες <em> οι οποίες περιέχουν την ιδιότητα class με την τιμή "idiotites", ενώ το στυλ em.times θα εφαρμοστεί σε όλες τις ετικέτες <em> οι οποίες περιέχουν την ιδιότητα class με την τιμή "times"

Σύνταξη στυλ ανεξάρτητα από την ετικέτα

Σύνταξη:
 
.τιμή_της_ιδιότητας_class {
ιδιότητα: τιμή;
}
 
Στον προηγούμενο τρόπο σύνταξης, παραλείποντας το όνομα της ετικέτας στον Επιλογέα ενός στυλ με την χρήση της ιδιότητας class, το στυλ αυτό μπορεί να εφαρμοστεί σε όλες τις ετικέτες που περιέχουν στην ιδιότητα class την τιμή που αναφέρεται στον Επιλογέα, πχ.:
Παράδειγμα:
 
<html>
<head>
<title>Δοκίμασε το</title>
<meta content="text/html; charset=iso-8859-7" />

<style type="text/css">
.keimeno12px
 {

font-size: 12px;
FONT-FAMILY: Arial, Helvetica, sans-serif;
color: #228B22;
font-weight: bold;
TEXT-DECORATION: none;
}
</style>
</head>

<body>
<h1 class="keimeno12px">Αυτή είναι μια επικεφαλίδα</h1>
<p class="keimeno12px">Αυτή είναι μια παράγραφος</p>

Αυτή είναι μια Λίστα: <ul>
<li class="keimeno12px">Coffee</li>
<li class="keimeno12px">Tea</li>
<li class="keimeno12px">Milk</li>
</ul>

<p>Αυτή είναι μια παράγραφο που δεν περιέχει την ιδιότητα class</p>
</body>
</html>
 
Αλλάξτε τις τιμές των ιδιοτήτων του στυλ .keimeno12 και παρατηρήστε πως αλλάζει το στυλ του κειμένου που βρίσκετε μέσα σε όλες τις ετικέτες που περιέχουν την ιδιότητα class

Το στυλ .keimeno12px θα εφαρμοστεί σε όλες τις ετικέτες της σελίδας οι οποίες περιέχουν την ιδιότητα class με την τιμή "keimeno12px"

Σύνταξη στυλ με την χρήση της ιδιότητας id

Σύνταξη:
 
ετικέτα#τιμή_της_ιδιότητας_ID {
ιδιότητα: τιμή;
}
 
Μπορούμε να ορίσουμε στυλ για συγκεκριμένες ετικέτες της σελίδας μας οι οποίες περιέχουν την ιδιότητα id, τοποθετώντας για Επιλογέα το σύμβολο # ακολουθόμενο απο την τιμή της id που θέλουμε να εφαρμοστεί το στυλ.

Η κοινή ιδιότητα id της HTML ορίζει ένα μοναδικό όνομα (ταυτότητα) για ένα στοιχείο της σελίδας ώστε να μπορούμε να αναφερθούμε σε αυτό μέσα από ένα script (π.χ. JavaScript ή VBScript) ή να εφαρμόσουμε στο στοιχείο αυτό ένα στυλ με την CSS.
Παράδειγμα:
 
<html>
<head>
<title>Δοκίμασε το</title>
<meta content="text/html; charset=iso-8859-7" />

<style type="text/css">
p#paragrafos1 {
font-size: 12px;
FONT-FAMILY: Arial, Helvetica, sans-serif;
color: #228B22;
font-weight: bold;
TEXT-DECORATION: none;
}

div#aristero_tmhma {
background-color: blue;
color: White;
text-decoration: bold;
}
</style>
</head>

<body>

<p id="paragrafos1">
κείμενο μέσα στην παράγραφο paragrafos1...
</p>

<p>
Κείμενο μέσα στην παράγραφο...
</p>

<div id="aristero_tmhma">
Κείμενο μέσα στην ενότητα div
</div>

</body>
</html>
 
Στην παράγραφο με id την τιμή "paragrafos1" θα εφαρμοστεί το στυλ p#paragrafos1, ενώ στο τμήμα div με id την τιμή "aristero_tmhma" θα εφαρμοστεί το στυλ div#aristero_tmhma.

Έχουμε επίσης την δυνατότητα, παραλείποντας το όνομα της ετικέτας πριν το σύμβολο #, να εφαρμόσουμε ένα στυλ σε κάθε ετικέτα που έχει id ίδιο με αυτό που ακολουθεί μετά το #
Παράδειγμα:
 
#left {
font-size: 12px;
FONT-FAMILY: Arial, Helvetica, sans-serif;
color: #228B22;
font-weight: bold;
TEXT-DECORATION: none;
}
 

Και αυτός ο τρόπος σύνταξης (όπως και η σύνταξη στυλ με την χρήση class) είναι ο περισσότερο χρησιμοποιούμενος, καθώς μας δίνει την ευελιξία να διαχωρίσουμε ίδιες ετικέτες μεταξύ τους και να εφαρμόσουμε σε αυτές διαφορετικά στυλ.
 

Ορισμός περισσοτέρων απο ένα στυλ σε μια ετικέτα

Παράδειγμα:
 
<p class="right bold color1">Αυτή είναι μια παράγραφος</p>
 
Σε μια ετικέτα μπορούμε να ορίσουμε περισσότερα από ένα στυλ. Στο παραπάνω HTML κώδικα στην ετικέτα <p> εφαρμόζονται ταυτόχρονα 3 διαφορετικά στυλ, τα: .right.bold και .color1

Παράδειγμα:
 
<html>
<head>
<title>Δοκίμασε το</title>
<meta content="text/html; charset=iso-8859-7" />

<style type="text/css">
.right
 {

text-align: right;
}

.bold {
font-weight: bold;
}

.color1 {
color: #228B22;
}
</style>
</head>

<body>
<h1 class="right bold">Αυτή είναι μια επικεφαλίδα</h1>
<p class="right bold color1">Αυτή είναι μια παράγραφος</p>

Αυτή είναι μια Λίστα:
<ul>
<li class="bold color1">Coffee</li>
<li class="bold color1">Tea</li>
<li class="bold color1">Milk</li>
</ul>
</body>
</html>
 
Στην ετικέτα <h1 class="right bold">Αυτή είναι μια επικεφαλίδα</h1> θα εφαρμοστούν δύο στυλ, το .right και το .bold, δηλαδή το κείμενο Αυτή είναι μια επικεφαλίδα, θα εμφανιστεί με δεξιά στοίχιση (text-align: right;) και έντονη γραφή (font-weight: bold;).

Στην ετικέτα <p class="right bold color1">Αυτή είναι μια παράγραφος</p> θα εφαρμοστούν τρία στυλ, το .right, το .bold και το .color1, δηλαδή το κείμενο Αυτή είναι μια παράγραφος θα εμφανιστεί με δεξιά στοίχιση, με έντονη γραφή και με χρώμα #228B22

 

Σύνταξη στυλ για ετικέτες με συγκεκριμένη ιδιότητα και τιμή

Σύνταξη:
 
ετικέτα[ιδιότητα_ετικέτας="τιμή"] {
ιδιότητα: τιμή;
}
 
Μπορούμε να εφαρμόσουμε στυλ σε HTML ετικέτες με συγκεκριμένη ιδιότητα και τιμή
Παράδειγμα:
 
<html>
<head>
<title>Δοκίμασε το</title>
<meta content="text/html; charset=iso-8859-7" />

<style type="text/css">
input[type="text"]
 {

background-color: yellow;
color: black;
text-decoration: bold;
}
</style>
</head>

<body>
<input type="text" size="40" value="Κείμενο">
<input type="password" size="40">
</body>
</html>
 
Το στυλ που ορίζεται στο τμήμα head της παραπάνω σελίδας θα εφαρμοστεί σε όλες τις ετικέτες <input> οι οποίες περιέχουν την ιδιότητα type με την τιμή "text". Στο πεδίο password δεν θα εφαρμοστεί το στυλ γιατί η τιμή της ιδιότητας type δεν είναι "text" αλλά "password". Αν θέλαμε να εφαρμόσουμε κάποιο στυλ και στο πεδίο password, θα προσθέταμε στο τμήμα head την παρακάτω σύνταξη στυλ:

Παράδειγμα:
 
input[type="password"] {
...
}
 

Σχόλια στην CSS

Όπως στην HTML έτσι και στην CSS μπορούμε να προσθέσουμε σχόλια στον κώδικα. Ένα σχόλιο αρχίζει με /* και τελειώνει με */

Παράδειγμα:
 
<html>
<head>
<title>Δοκίμασε το</title>
<meta content="text/html; charset=iso-8859-7" />

<style type="text/css">

/* To stul auto to eftiaksa gia na tonisw me diaforetiko xrwma tis idiotites mias etiketas */
em.idiotites {
font-size: 12px;
FONT-FAMILY: Arial, Helvetica, sans-serif;
color: #228B22;
font-weight: bold;
TEXT-DECORATION: none;
}

/* To stul auto to eftiaksa gia na tonisw me diaforetiko xrwma tis times twn idiotitwn mias
etiketas */

em.times {
font-size: 12px;
FONT-FAMILY: Arial, Helvetica, sans-serif;
color: #FFA07A;
font-weight: bold;
TEXT-DECORATION: none;
}
</style>
</head>

<body>
Η ετικέτα &lt;ul&gt; εισάγει μια μη αριθμημένη λίστα στην σελίδα μας. Το &lt;ul&gt; είναι τα δύο πρώτα γράμματα από το <em>Unordered List</em>. Η ετικέτα &lt;li&gt; προσθέτει γραμμές στην λίστα. Η ιδιότητα <em class="idiotites">type</em> της ετικέτας &lt;ul&gt; ορίζει το σύμβολο που μπαίνει μπροστά από κάθε γραμμή της λίστας. Οι τιμές που παίρνει η ιδιότητα <em class="idiotites">type</em> είναι οι εξής:
<em class="times">disc</em>, <em class="times">circle</em>, <em class="times">square</em>
</body>
</html>
 

Ψευδοκλάσεις (Pseudo-classes)

 

Οι ψευδοκλάσεις της CSS χρησιμοποιούνται για να προσθέσουν εφέ σε ορισμένα στοιχεία της σελίδας μας

Σύνταξη ψευδοκλάσεων

Η σύνταξη των ψευδοκλάσεων είναι η παρακάτω:
 
επιλογέας:ψευδοκλάση {
ιδιότητα: τιμή;
}
 
Σύνταξή με την τιμή class:
 
επιλογέας.τιμή_της_ιδιότητας_class:ψευδοκλάση {
ιδιότητα: τιμή;
}
 
Μερικές από τις ψευδοκλάσεις είναι οι :
  • :link, εφαρμόζεται το στυλ με την ψευδοκλάση αυτή, όταν ο χρήστης δεν έχει επισκεφθεί παλαιότερα τον σύνδεσμο
  • :visited, εφαρμόζεται το στυλ με την ψευδοκλάση αυτή, όταν ο χρήστης έχει επισκεφθεί παλαιότερα τον σύνδεσμο
  • :hover, εφαρμόζεται το στυλ με την ψευδοκλάση αυτή, όταν ο χρήστης τοποθετεί τον δείκτη του ποντικιού του επάνω απο τον σύνδεσμο
  • :active, εφαρμόζεται το στυλ με την ψευδοκλάση αυτή, όταν ο χρήστης έχει πατημένο το αριστερό κλικ του ποντικιού του επάνω στον σύνδεσμο

Χρήση των ψευδοκλάσεων στους συνδέσμους

 

Παραδείγματα

Ψευδοκλάσεις στους συνδέσμους
Με την χρήση των ψευδοκλάσεων στους συνδέσμους, μπορούμε να προσθέσουμε εφέ σ' αυτούς

 

Ψευδοστοιχεία (Pseudo-elements)

Τα ψευδοστοιχεία της CSS χρησιμοποιούνται για να προσθέσουν εφέ σε ορισμένα στοιχεία της σελίδας μας

 

Σύνταξη ψευδοστοιχείων

Η σύνταξη των ψευδοστοιχείων είναι η παρακάτω:
 
επιλογέας:ψευδοστοιχείο {
ιδιότητα: τιμή;
}

Σύνταξή με την τιμή class:
 
επιλογέας.τιμή_της_ιδιότητας_class:ψευδοστοιχείο {
ιδιότητα: τιμή;
}

Τα ψευδοστοιχεία είναι τα παρακάτω :
  • :first-line, xρησιμοποιείται για να προσθέσει στυλ στην πρώτη γραμμή του κειμένου του στοιχείου που αναφέρετε ο επιλογέας του στυλ
  • :first-letter, xρησιμοποιείται για να προσθέσει στυλ στον πρώτο γράμμα του κειμένου του στοιχείου που αναφέρετε ο επιλογέας του στυλ

 

 

Το ψευδοστοιχείο :first-line

Το ψευδοστοιχείο :first-line xρησιμοποιείται για να προσθέσει στυλ στην πρώτη γραμμή του κειμένου του στοιχείου που αναφέρεται ο επιλογέας του στυλ

Στο παρακάτω παράδειγμα, η πρώτη γραμμή της παραγράφου θα εμφανιστεί με μπλε χρώμα:
 
<html>
<head>
<title>Δοκίμασε το</title>
<meta content="text/html; charset=iso-8859-7" />
<style type="text/css">
p:first-line {
color:#0000ff;
font-variant:small-caps
}
</style>
</head>
<body>
<p>Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός.
Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός.
Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός.
Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. </p>

</body>
</html>
 
Δεν μπορούμε να χρησιμοποιήσουμε όλες τις ιδιότητες CSS σε ένα στυλ με το ψευδοστοιχείο :first-line. Οι επιτρεπτές ιδιότητες είναι οι παρακάτω:

 

 

Το ψευδοστοιχείο :first-letter

Το ψευδοστοιχείο :first-letter xρησιμοποιείται για να προσθέσει στυλ στον πρώτο χαρακτήρα του κειμένου του στοιχείου που αναφέρεται ο επιλογέας του στυλ

Στο παρακάτω παράδειγμα, ο πρώτος χαρακτήρας της παραγράφου, θα εμφανιστεί με μπλε χρώμα:
 
<html>
<head>
<title>Δοκίμασε το</title>
<meta content="text/html; charset=iso-8859-7" />
<style type="text/css">
p.paragr1:first-letter {
color:#0000ff;
font-variant:small-caps
}
</style>
</head>
<body>
<p class="paragr1" >Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός.
Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός.
Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός.
Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. </p>

</body>
</html>

Δεν μπορούμε να χρησιμοποιήσουμε όλες τις ιδιότητες CSS σε ένα στυλ με το ψευδοστοιχείο :first-letter. Οι επιτρεπτές ιδιότητες είναι οι παρακάτω:

 

Χρήση και των δύο ψευδοστοιχείων σε ένα στοιχείο της σελίδας

Μπορούμε να εφαρμόσουμε και τα δύο ψευδοστοιχεία σε ένα στοιχείο της σελίδας μας. Για παράδειγμα, αν θέλουμε να εφαρμόσουμε ένα στυλ στην πρώτη γραμμή της παραγράφου και ταυτόχρονα ένα άλλο στυλ για τον πρώτο χαρακτήρα της ίδιας παραγράφου, τότε θα γράψουμε:

Στυλ για την πρώτη γραμμή μιας παραγράφου και για τον πρώτο χαρακτήρα

<html>
<head>
<title>Δοκίμασε το</title>
<meta content="text/html; charset=iso-8859-7" />
<style type="text/css">
p:first-letter {
color:Red
font-size:30px;
}
p:first-line {
color:#0000ff;
font-variant:small-caps
}
</style>
</head>
<body>
<p>Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. Αυτή είναι μια παράγραφός. </p>

</body>
</html>

Συνομιλία
CSS - μάθημα 1

Εδώ υποβάλουμε ερωτήσεις, απορίες ή βοηθάμε ο ένας τον άλλο.

Συζητήσεις
CSS
Συζήτηση για το μάθημα
Εργασίες

Τροποποιήστε τα αρχεία index.html και custom.css έτσι ώστε:

  Το body να έχει τις εξής ιδιότητες στο style (στο αρχείο css):

    background-color: #e9f2ea;

    border: 5px solid;

    border-color: green;

    border-radius: 10px;

 To h2 να έχει:

     color: green;

     text-align: center;

     font-size: 30px;

  Η πρώτη παράγραφος να έχει χρώμα γραμμάτων green και μέγεθος 12px, και η δεύτερη red και μέγεθος 14px      αντίστοιχα.
Θα υποβάλετε ένα zip αρχείο με τα δύο αρχεία μέσα.

Σύνδεσμοι
Visual Studio Code

Ένα EDITOR για html και όχι μόνο! 

Σύνδεσμοι
Notepad++

Εξέλιξη του γνωστού σας Notepad (Σημειωματάριο) των Windows. Έχει βοήθεια και έγχρωμη παρουσίαση για html, αλλά και για πολλές άλλες γλώσσες προγραμματισμού.  

Σύνδεσμοι
7-zip

Ελεύθερο πρόγραμμα συμπίεσης αρχείων και φακέλων.