Startseite » Codierung » HTML5-Tutorial Erstellen einer einzelnen Produktseite
HTML5-Tutorial Erstellen einer einzelnen Produktseite
Dieser Artikel ist Teil unseres "HTML5 / CSS3-Tutorials" - engagiert, um Sie zu einem besseren Designer und / oder Entwickler zu machen. Klick hier um mehr Artikel aus derselben Serie zu sehen.
In diesem Beitrag werden wir an einem fiktionalen Projekt arbeiten und eine einzige Produktseite erstellen, um das iPhone 4S anzubieten. In diesem Projekt werden wir auch die Methoden implementieren, die wir in den vorherigen Beiträgen besprochen haben. das Element und die Negationsauswahl.
Lass uns anfangen.
Das HTML5-Markup
Zuerst müssen wir ein erstellen html Dokument mit dem folgenden Markup:
Apple iPhone 4 - 16 GB
Das erstaunlichste iPhone bisher.
Der schnellere Dual-Core-A5-Chip. Die 8-Megapixel-Kamera mit völlig neuer Optik nimmt auch 1080p HD-Videos auf. Und Siri vorstellen. Es ist das bisher erstaunlichste iPhone.
Produktmerkmale
8-Megapixel-Kamera mit voller 1080p-Videoaufnahme
Siri Sprachassistent
iCloud
Luftdruck
Retina Display
Foto- und Video-Geotagging
Wir verwenden mehrere neue Tags aus der HTML5-Spezifikation Header, hgroup, Zahl, Sektion, und eine, die wir vorher besprochen haben; das Einzelheiten und Zusammenfassung Etikett.
Wir werden uns jedoch nicht mit diesen Tags befassen, nicht weil wir es nicht wollen, sondern es handelt sich hierbei um grundlegende Themen, die Sie leicht an anderer Stelle finden können. Wenn Sie also wirklich neu in HTML5 sind, würde ich Ihnen empfehlen, die folgenden Referenzen dieser Tags zu lesen. Sie haben sie ausführlich erklärt:
Lassen Sie uns über Semantik sprechen
Das HTML5-Header-Element
Das hgroup Element
HTML5-Tagreferenz
Nun sehen wir uns den ersten Auftritt unserer Seite an.
Nun, es sieht ohne Stil sinnvoll aus. Ganz oben befindet sich die Kopfzeile und dann der Abschnitt für das Bild, die Beschreibung und schließlich die Schaltfläche "Jetzt kaufen". Jetzt lasst uns diese Seite aufmischen.
Die Stile
Wir beginnen damit, alle Standardstile mit diesem Stylesheet zu normalisieren und dem Hintergrund einen Farbverlaufshintergrund hinzuzufügen html Etikett.
Denken Sie daran, dass unsere Produktelemente alle in ein div mit der Produktklasse. Hier möchten wir den Wrapper zentrieren und die Breite auf ungefähr einstellen 650px.
.Wrapper Breite: 650px; Marge: auto; Polsterung: 25px 0px;
Der Kopfabschnitt
Im Kopfbereich haben wir zwei Überschriften h1 und h4, also lassen Sie uns diese Elemente gestalten.
Es sieht gut aus, aber das Details-Tag funktioniert immer noch nicht (außer in Chrome). Deswegen wollen wir die Schaltfläche als nächstes gestalten.
Die Taste
Bei den Schaltflächenstilen ahmen wir die vom Apple.com Store nach. Und hier ist die gesamte Syntax, die Sie in Ihr Stylesheet für die Schaltfläche einfügen müssen.
Wie üblich verursacht der Internet Explorer (IE) immer Probleme. Wenn Sie dies in einem IE unter 9 öffnen, bleibt die Seite ohne Stil.
Dies liegt daran, dass Internet Explorer die neuen Elemente nicht erkennt (Sektion, Header, usw.), so dass die von uns angegebenen Stile nicht zutreffen. Daher werden wir im nächsten Schritt daran arbeiten, dieses Problem zu lösen.
Browser-Unterstützung testen
In unserem vorherigen Beitrag haben wir die Browserunterstützung für das Details-Element mit dieser Polyfill-Lösung in Angriff genommen. damit es in den nicht unterstützten Browsern funktionieren könnte. Dieses Mal werden wir jedoch mit Modernizr verschiedene Methoden ausprobieren.
Von seiner offiziellen Website, "Modernizr ist eine Open-Source-JavaScript-Bibliothek, mit der Sie die nächste Generation von erstellen können HTML5 und CSS3-betriebene Websites". Technisch wird Modernizr die Browserunterstützung für bestimmte neue Elemente und Funktionen testen. Wenn kein Support bereitgestellt wird, müssen wir einen Fallback bereitstellen, indem unterschiedliche Stile angegeben oder bereitgestellt werden Polyfills. In diesem Fall verwenden wir Modernizr, um die Details und das Zusammenfassungselement zu testen.
Gehen Sie zu Modernizr und fahren Sie mit der Download-Seite fort.
Auf der Download-Seite bietet Modernizr einige Optionen zum Konfigurieren der Bibliothek, sodass Sie nur bestimmte Funktionen auswählen müssen, die Sie wirklich für Ihre Website benötigen. In diesem Fall brauchen wir:
HTML5Shiv 3.4
CSS-Klassen hinzufügen, Diese Funktion fügt automatisch Klassen in das HTML-Tag ein.
das Modernizr.load,
Gehen Sie zum Community-Add-On-Feld und wählen Sie elem-details,
Wählen Sie im Abschnitt Erweiterbarkeit Modernizr.addTest.
Generieren Sie die Datei und laden Sie sie herunter.
Verknüpfen Sie sie mit Ihrer HTML-Datei und laden Sie die Seite erneut in Internet Explorer. Die Seite sollte jetzt gestaltet worden sein, da Internet Explorer die Tags jetzt erkennen kann.
Wenn Sie das Quell- oder Inspektionselement anzeigen, werden Sie feststellen, dass die Klasse no-details in das html-Tag eingefügt wurde. Anzeigen, dass der Browser die Seite in der Vorschau anzeigt; unterstützt derzeit kein Detailelement. [Ich kann diesen Satz nicht verstehen. ]
Wir können dann einen Fallback erstellen, indem wir diese Klasse als Hook verwenden, was wir im nächsten Schritt tun werden.
Der Fallback
In diesem Schritt werden wir ähnlich anbieten Einzelheiten Elementfunktionalität für andere Browser (außer Chrome). Im vorherigen Beitrag wurde dieser Schritt automatisch mit diesem Skript ausgeführt. Dieses Mal werden wir es jedoch selbst erstellen.
Hinweis: Ich habe nur ein wenig aus unserem vorherigen Post gelesen. Das Element details wird derzeit nur vom Chrome-Browser unterstützt.
Beginnen wir also mit der Arbeit am CSS.
Beim Zusammenfassungs-Tag ändern wir den Cursor-Modus in Zeiger, sodass der Benutzer feststellen kann, dass er anklickbar ist.
Um mehr Leerzeichen am oberen und unteren Rand des Details-Elements mit einem Rand zu erhalten.
Details Marge: 20px 0px;
Standardmäßig enthält das Summary-Tag einen Pfeil. Hier möchten wir es jedoch durch ein Plus-Minus-Symbol ersetzen.
Hinweis: Bevor ich fortfahre, habe ich zuvor die Icons aus dieser Sammlung von Fugue heruntergeladen, heruntergeladen und in eine Datei gespritzt.
Fügen wir ein Pseudo-Element vor und fügen Sie das Symbol als Hintergrund ein. Beachten Sie, dass sich zu diesem Zeitpunkt die Hintergrundposition oben befindet und das Plus-Symbol angezeigt wird.
Details> Zusammenfassung: Vorher Breite: 16px; Höhe: 16px; Anzeige: Inline-Block; Inhalt: "! wichtig; Hintergrund: URL ('… /https://assets.hongkiat.com/uploads/html5-single-product-page/plus-min.png') Keine Wiederholung der Mitte oben; Rand rechts: 5px; Position: relativ; oben: 2px;
Wenn das Detailelement geöffnet ist, wird die Hintergrundposition nach unten verschoben, wodurch das Minus-Symbol angezeigt wird.
Details [Öffnen]> Zusammenfassung: Vorher, Details.Open> Zusammenfassung: Vorher Hintergrund: URL ('… /https://assets.hongkiat.com/uploads/html5-single-product-page/plus-min.png' ) keine Wiederholung des Mittelbodens;
Das [öffnen] Zeichen ist ein Selektor. In diesem Fall wird das Attribut "Details offen" im unterstützenden Browser ausgewählt.
Zuletzt sollten wir den Pfeil ausblenden, der standardmäßig in Chrome angezeigt wird.
Dann lassen Sie uns das Ergebnis eine Zeit lang in einem Browser sehen.
Der Standardpfeil wurde jetzt durch unser Symbol ersetzt. Wenn Sie ihn in Chrome sehen, haben Sie bereits einen Umschalteffekt, wenn Sie darauf klicken. Das Symbol ändert sich entsprechend. In anderen Browsern wird jedoch noch nichts passieren. Im nächsten Schritt versuchen wir also, den Effekt mit jQuery zu replizieren.
Der Umschalteffekt mit jQuery
Bevor wir mit dem jQuery-Teil beginnen, möchte ich mich bei Ian Devlin für die Inspiration bedanken. Das folgende Skript ist eine geringfügige Modifikation von ihm.
In Ordnung, erstellen wir eine Variable, um das Summary-Tag zu speichern.
var summary = $ ('details summary');
Dann verpacken wir alle Geschwisterelemente der Zusammenfassung mit einem div.
summary.siblings (). wrapAll ('');
Und blenden Sie dieses div aus, wenn das details-Element nicht die offene Klasse hat.
$ ('details: nicht (.open) - Zusammenfassung'). Geschwister ('div'). hide ();
Wenn auf die Zusammenfassung geklickt wird, soll das ausgeblendete Div angezeigt werden. Wenn das Div anfangs geöffnet ist, wird es ausgeblendet.
Jetzt testen wir es im Browser. der Toggle-Effekt sollte jetzt bei allen Browsern funktionieren, habe ich persönlich geprüft (bis Internet Explorer 7).
Demo
Quelle herunterladen
Tipps: Alternativ können Sie das ändern .Umschalten() mit .slideToggle () einen Folieneffekt erzeugen. Wenn Sie möchten, dass das Detail anfangs geöffnet wird, können Sie im details-Element eine Klasse öffnen.
Fazit
Wir haben alle Schritte des Erstellens einer einzelnen Produktseite mit HTML5 durchlaufen, das Debuggen für nicht unterstützte Browser sowie das Replizieren des Umschalteffekts für Details auf eigene Faust. So können Sie hoffentlich viel davon lernen.
Ich bin mir jedoch bewusst, dass ich in diesem Beitrag nicht alles im Detail erklärt habe. Wenn Sie also etwas aufklären möchten, können Sie die Frage im Kommentarfeld unten posten.