10 Νέες δυνατότητες της HTML 5.1 & Πώς να τις χρησιμοποιήσετε IRL
Η προδιαγραφή HTML πήρε ένα γενική επισκευή πριν από μερικές εβδομάδες, όταν το W3C δημοσίευσε το δικό του νέα σύσταση HTML 5.1 τον Νοέμβριο του 2016. Στην πρόσφατη θέση του στο blog, το W3C κάλεσε τη νέα μεγάλη κυκλοφορία του χρυσός κανόνας, καθώς το HTML 5.1 μας παρέχει νέους τρόπους με τους οποίους μπορούμε να χρησιμοποιήσουμε την HTML για να δημιουργήσουμε πιο ευέλικτες εμπειρίες ιστού.
Σε αυτό το άρθρο, θα ρίξουμε μια ματιά στα νέα χαρακτηριστικά που μπορείτε να χρησιμοποιήσετε χωρίς να αγγίζετε το JavaScript, Ωστόσο, οι βελτιώσεις του φόντου JavaScript είναι επίσης αξιοσημείωτες, όπως μπορείτε να δείτε στο επίσημο αρχείο καταγραφής αλλαγών.
Σημειώστε ότι προς το παρόν όχι όλα τα προγράμματα περιήγησης υποστηρίζουν όλες αυτές τις λειτουργίες, οπότε μην ξεχάσετε να το κάνετε ελέγξτε την υποστήριξη του προγράμματος περιήγησης πριν τα χρησιμοποιήσετε στην παραγωγή. Εάν ενδιαφέρεστε για το περαιτέρω ανάπτυξη του προτύπου HTML, μπορείτε να δείτε το σχέδιο εργασίας του HTML 5.2 επίσης.
1. Καθορίστε πολλαπλούς πόρους εικόνας για ευαίσθητο σχεδιασμό
Σε HTML 5.1, μπορείτε να χρησιμοποιήσετε tag μαζί με το
srcset
χαρακτηριστικό να κάνει ευαίσθητη επιλογή εικόνας δυνατόν. ο ετικέτα αντιπροσωπεύει ένα δοχείο εικόνας που επιτρέπει στους προγραμματιστές να δηλώνουν διαφορετικούς πόρους εικόνας προκειμένου να προσαρμοστούν στην UAτο μέγεθος του παραθύρου προβολής, την πυκνότητα των εικονοστοιχείων, τον τύπο οθόνης και άλλες παραμέτρους που χρησιμοποιούνται ανταποκρίσιμος σχεδιασμός.
ο η ίδια η ετικέτα δεν εμφανίζει τίποτα, λειτουργεί απλά ως πλαίσιο για τους πόρους πολλαπλών εικόνων. Πρέπει να δηλώσετε το προεπιλεγμένη πηγή εικόνας ως η αξία του
src
χαρακτηριστικό του ετικέτα και το εναλλακτικούς πόρους εικόνας πηγαίνετε μέσα στο
srcset
χαρακτηριστικά του και
στοιχεία.
Παράδειγμα κώδικα:
2. Εμφανίστε ή αποκρύψτε επιπλέον πληροφορίες
Με το
και
ετικέτες, μπορείτε προσθέστε εκτεταμένες πληροφορίες σε ένα κομμάτι περιεχομένου. Οι επιπλέον πληροφορίες δεν εμφανίζεται από προεπιλογή, αλλά αν ενδιαφέρονται οι χρήστες, αυτοί έχετε την επιλογή να ρίξετε μια ματιά. Στον κώδικα σας, υποτίθεται ότι Τοποθετήστε το
ετικέτα μέσα
. Μετά το
ετικέτα μπορείτε προσθέστε τις πρόσθετες πληροφορίες θέλετε να κρύψετε.
Παράδειγμα κώδικα:
Μήνυμα λάθους
Δεν ήταν δυνατό να ολοκληρωθεί η λήψη αυτού του βίντεο.
- Ονομα αρχείου:
- yourfile.mp4
- Μέγεθος αρχείου:
- 100 MB
- Διάρκεια:
- 00:05:27
Έτσι φαίνεται αυτό το παράδειγμα κώδικα στο Firefox 50.0.2:
3. Προσθέστε λειτουργικότητα στο μενού περιβάλλοντος του προγράμματος περιήγησης
Με το και του
type = "context"
χαρακτηριστικό, μπορείτε προσθήκη προσαρμοσμένης λειτουργικότητας στο μενού περιβάλλοντος του προγράμματος περιήγησης. Πρέπει να εκχωρήσετε ως το παιδικό στοιχείο του
ετικέτα. ο
ταυτότητα
απο στοιχείο πρέπει να έχουν την ίδια τιμή με το
κατάλογος συμφραζόμενων
Χαρακτηριστικό του στοιχείου στο οποίο θέλουμε να προσθέσουμε το μενού περιβάλλοντος στο (ποιο είναι το στοιχείο στο παρακάτω παράδειγμα).
Παράδειγμα κώδικα:
ο ετικέτα μπορεί έχουν τρεις διαφορετικούς τύπους,
"πλαίσιο ελέγχου"
, "εντολή"
(στην οποία πρέπει να προσθέσετε μια ενέργεια με JavaScript), και ραδιόφωνο
. Είναι δυνατό να προσθέσετε περισσότερα από ένα στοιχεία μενού σε ένα μενού περιβάλλοντος, ωστόσο υποστήριξη του προγράμματος περιήγησης για αυτό το χαρακτηριστικό είναι δεν είναι πολύ καλό ακόμα. Το Chrome 54 δεν το υποστηρίζει και ο Firefox 50 επιτρέπει μόνο την παρουσία ενός επιπλέον μενού περιβάλλοντος. Παρακάτω μπορείτε να δείτε πώς λειτουργεί το παράδειγμα κώδικα στον Firefox 50.
4. Κεφαλίδες και υποσέλιδα
HTML 5.1 σας επιτρέπει να τις κεφαλίδες και τα υποσέλιδα αν κάθε επίπεδο είναι που περιέχεται στο περιεχόμενο του τμήματος. Η παρακάτω σημείωση είναι ένα στιγμιότυπο οθόνης από τα έγγραφα του W3C και συμβουλεύει τους προγραμματιστές σχετικά με τον σωστό τρόπο τοποθέτησης κεφαλίδας και υποσέλιδου.
Αυτή η λειτουργία μπορεί να είναι χρήσιμη αν θέλετε να προσθέσετε επεξεργάστηκαν κεφαλίδες σε σημασιολογικά στοιχεία διατομής, όπως και
. Το παρακάτω παράδειγμα κώδικα δημιουργεί μια πλευρική γραμμή μέσα στην κεφαλίδα, το
ετικέτα είναι επίσης ένα στοιχείο διατομής, και προσθέτει επιπλέον πληροφορίες για τον συγγραφέα μέσα σε αυτό. Η πλευρική γραμμή μέσα στην κεφαλίδα έχει τη δική του κεφαλίδα επίσης, με έναν υπότιτλο και τις πληροφορίες επικοινωνίας του συγγραφέα.
Παράδειγμα κώδικα:
Τίτλος άρθρου
Εισαγωγή άρθρου
Άλλες παραγράφους ...
5. Χρησιμοποιήστε κρυπτογραφικές nonces για στυλ και σενάρια
Με το HTML 5.1, μπορείτε να προσθέσετε κρυπτογραφικές nonces σε στυλ και σενάρια. Μπορείτε να χρησιμοποιήσετε το nonce
Χαρακτηριστικό μέσα στο and the
elements. A cryptographic nonce is a randomly generated number that can be used only once, and has to be regenerated for every page request. A nonce can be used by the Content Security Policy of a website to decide if the certain script or style should be applied on the page. In Google Developers' Web Fundamentals you can read more on the proper usage of nonces and CSP.
Below, you can see a simple code example of how to use the nonce
attribute, however note that in a real world scenario its value shouldn't be hard-coded but randomly generated.
Code example:
6. Δημιουργήστε σχέσεις αντίστροφης ζεύξης
Μπορείτε να προσθέσετε το στροφή μηχανής
Χαρακτηριστικό στους συνδέσμους σας ξανά. Ορίστηκε προηγουμένως σε HTML 4, ωστόσο δεν υποστηρίχθηκε από HTML5. HTML 5.1 επιτρέπει στους προγραμματιστές να χρησιμοποιήστε αυτό το χαρακτηριστικό ξανά για το και
στοιχεία. ο
στροφή μηχανής
χαρακτηριστικό είναι το αντίθετο από rel
, καθορίζει τη σχέση του τρέχοντος και του συνδεδεμένου εγγράφου προς την αντίθετη κατεύθυνση (πώς το τρέχον έγγραφο σχετίζεται με το συνδεδεμένο έγγραφο).
Παράδειγμα κώδικα:
ο στροφή μηχανής
χαρακτηριστικό έχει συμπεριληφθεί στις προδιαγραφές HTML 5.1 κυρίως σε υποστήριξη RDFa που είναι ευρέως χρησιμοποιούμενο δομημένη μορφή σήμανσης δεδομένων, και επεκτείνει τη γλώσσα HTML.
7. Χρησιμοποιήστε εικόνες μηδενικού πλάτους
HTML 5.1 καθιστά δυνατή την δημιουργήστε εικόνες μηδενικού πλάτους επιτρέποντας στους προγραμματιστές να χρησιμοποιούν το πλάτος
με 0
ως αξία. Αυτή η λειτουργία μπορεί να είναι χρήσιμη αν θέλετε να συμπεριλάβετε εικόνες που εσείς δεν θέλετε να εμφανίζονται στους χρήστες, όπως η παρακολούθηση αρχείων εικόνας. Απαιτούνται εικόνες μηδενικού πλάτους χρησιμοποιούνται μαζί με κενά alt
γνωρίσματα.
Παράδειγμα κώδικα:
8. Ξεχωριστά πλαίσια περιηγητή για την αποτροπή επιθέσεων phishing
Η χρήση των ίδιων συνδέσμων προέλευσης στον ιστότοπό σας μπορεί τελικά να σας φέρει σε κάποιο πρόβλημα. Η ευπάθεια ονομάζεται target =”_κενό” εκμεταλλεύομαι, και είναι μια άσχημη επίθεση phishing. Μπορείτε να δοκιμάσετε (με ασφάλεια) πώς λειτουργεί αυτή η επίθεση σε αυτή την έξυπνη σελίδα επίδειξης Github και τον κώδικα του υποβάθρου μπορείτε να βρείτε εδώ στο Github.
Το HTML 5.1 έχει τυποποιήσει τη χρήση του rel = "noopener"
χαρακτηριστικό το οποίο διαχωρίζει τα πλαίσια περιήγησης επομένως εξαλείφει αυτό το ζήτημα. Μπορείς να χρησιμοποιήσεις rel = "noopener"
μέσα στο και
στοιχεία.
Παράδειγμα κώδικα:
Ο σύνδεσμός σας που δεν θα προκαλέσει προβλήματα
9. Δημιουργήστε μια κενή επιλογή
HTML 5.1 επιτρέπει στους προγραμματιστές να δημιουργήστε ένα κενό στοιχείο. ο
tag μπορεί να είναι το παιδικό στοιχείο του
,
, ή
στοιχεία. Η πιθανότητα έχοντας ένα κενό
μπορεί να είναι χρήσιμη αν δεν θέλετε να προτείνετε ποια επιλογή πρέπει να επιλέξουν οι χρήστες και ποια μπορεί να είναι χρήσιμη όταν θέλετε να σχεδιάσετε φιλικές προς το χρήστη φόρμες.
10. Χειριστείτε τις λεζάντες της εικόνας πιο ευέλικτα
ο
η ετικέτα αντιπροσωπεύει ένα λεζάντα ή λεζάντα που ανήκουν στο στοιχείο που είναι ένα δοχείο για γραφικά, όπως εικονογραφήσεις, φωτογραφίες και διαγράμματα. Προηγουμένως, το
ετικέτα θα μπορούσε να χρησιμοποιηθεί μόνο ως το πρώτο ή το τελευταίο παιδί του στοιχείο. HTML 5.1 έχει χαλαρώσει αυτόν τον κανόνα, και τώρα
μπορεί να εμφανιστεί οπουδήποτε εντός του δοχείο.