Anmerkung des Herausgebers: Kurz nach Veröffentlichung dieses Artikels wurde die SitePoint -Homepage neu gestaltet. Entschuldigung, Kitty!
Als langjähriger Schriftsteller bei SitePoint finde ich immer das Titeldesign ihrer Artikel sehr attraktiv. Der Titel enthält alle erforderlichen Informationen für den Artikel: Titel, Autor, Datum, Kategorie und sogar Community -Metriken (Anzahl der Kommentare und Likes).
Ich finde es interessant, eine solche Komponente aus einer HTML- oder CSS -Perspektive zu erstellen. In diesem Artikel werden wir diese Komponenten Schritt für Schritt erstellen, um die Besten zu bemühen: zugänglich, wartbar, thematisch und SEO-freundlich.
Schlüsselpunkte
- Content-First-Ansatz: betont, dass Sie sich vor HTML-Tagging, CSS-Stilen und optionalen JavaScript-Verbesserungen zunächst auf Inhalte konzentrieren sollten, um Zugänglichkeit, Wartbarkeit, thematische und SEO-freundliche Sex zu gewährleisten.
- Komponentenstruktur: Nennen Sie die CSS -Klasse mit der BEM -Methode (Blockelementmodifikator), um die Lesbarkeit und Wiederverwendbarkeit des Codes zu verbessern, was für die Aufrechterhaltung großer CSS -Code -Basis von entscheidender Bedeutung ist.
- Flexbox -Verwendung: zeigt die effektive Verwendung von Flexbox in Responsive Design, mit der Komponenten wie SitePoint -Karten die Layout -Integrität an verschiedenen Bildschirmgrößen nahtlos anpassen und aufrechterhalten können.
- Barrierefreiheit und SEO: hebt die Verwendung von SVG- und ARIA-Tags hervor, um zugängliche Symbole zu erreichen, sowie Möglichkeiten zur Verbesserung der SEO mit MicroData, um sicherzustellen .
- Themen und Anpassungen: Diskutieren Sie die Trennung von Themen von Komponentenlayouts und die Verwendung von Namespace-basierten Klassen für Farbschemata, wodurch das Anpassen und das Thema einfacher das Anpassen und Thema der Struktur CSS erleichtert werden kann.
Beginnen Sie mit Inhalten
Komponentenerstellung sollte fast immer der folgenden Reihenfolge folgen: Inhalt zuerst, dann Tags, dann Styles und schließlich JavaScript (falls erforderlich). Wir werden nicht von dieser Regel abweichen, mit unseren Inhalten beginnen.
<code>HTML & CSS 8 条评论 CSS 和 Sass 精度的故事 作者:Kitty Giraudel 2016 年 5 月 12 日</code>
Von hier aus können wir unsere Inhalte in HTML einwickeln. Der gesamte Container ist ein <article></article>
Element, da dies der richtige Anwendungsfall dafür zu sein scheint. Darin haben wir einen Container für den oberen Teil, einen Container für den Titel (obwohl dies nicht ganz notwendig ist) und eine Fußzeile für die Metadaten.
<article class="c-article-tile"> <div class="c-article-tile__header"> HTML & CSS 8 条评论 </div> <div class="c-article-tile__body"> CSS 和 Sass 精度的故事 </div> <div class="c-article-tile__footer"> 作者:Kitty Giraudel 2016 年 5 月 12 日 </div> </article>
Hinweis: Wir verwenden die Benennungskonventionen im BEM-Stil mit Namespaces.
Als nächstes brauchen wir einen Unterkontainer, um unsere Elemente zu halten. Eine davon ist für Kategorien, eine für Kommentare, eine für geeignete Titel für Titel, eine für Autoren und eine für Daten. Fügen wir auch den Link hinzu.
<code>HTML & CSS 8 条评论 CSS 和 Sass 精度的故事 作者:Kitty Giraudel 2016 年 5 月 12 日</code>
Ersetzen wir das Wort "Kommentar" durch ein angemessenes zugängliches Symbol. Wir werden nicht ausführlich erklären. Sie können den effektiven SVG -Workflow für zugängliche Symbole lesen, um mehr zu erfahren.
<article class="c-article-tile"> <div class="c-article-tile__header"> HTML & CSS 8 条评论 </div> <div class="c-article-tile__body"> CSS 和 Sass 精度的故事 </div> <div class="c-article-tile__footer"> 作者:Kitty Giraudel 2016 年 5 月 12 日 </div> </article>
Beachten Sie, wie wir das Attribut aria-label
verwenden, damit assistive Technologie -Benutzer auf das Symbol zugreifen können.
Schließlich können wir unserem Code Mikrodaten hinzufügen, damit Suchmaschinen einfacher zu kriechen und indexieren zu können. Sehen Sie sich frei, die Referenz für schema.org -Artikel zu sehen. (Der Code zum Hinzufügen von Mikrodaten wird hier weggelassen, da er im Vergleich zum Originaltext nur dem zu Langen ElementProp -Attribut hinzugefügt wird.)
Bevor ich mit dem Design des Stils starte, möchte ich über Komponentenverpackungen und geeignete Designimplementierungen sprechen. Per Definition sollten Komponenten wiederverwendbar sein. Für eine ordnungsgemäße Wiederverwendung in einer reaktionsschnellen Umgebung ist es normalerweise besser, keine festen Größen und Kontextabstände zu haben und es auf natürliche Weise in seinem Behälter entfalten zu lassen.
Dies bedeutet, dass der Container selbst eine Art von Grenze der Kapselungskomponente angibt. In unserem Beispiel kann der Container ein Listenelement sein, das Teil der Listenkomponente ist, die zur Anzeige der Karte (oder anderer Inhalte) verwendet wird.
hier ist es, was es aussehen könnte:
<article class="c-article-tile"> <div class="c-article-tile__header"> <a class="c-article-tile__category" href="https://www.php.cn/link/24e6e6721e0a39950780dfb8f91e53ed"> HTML & CSS </a> <a class="c-article-tile__comment-count" href="https://www.php.cn/link/69650a619af368c12a6ee24947ad7572"> 8 条评论 </a> </div> <div class="c-article-tile__body"> <h2 class="c-article-tile__title"> <a href="https://www.php.cn/link/722fd8c97825bdea860322e28ac6dcbd">CSS 和 Sass 精度的故事</a> </h2> </div> <div class="c-article-tile__footer"> <span class="c-article-tile__author"> 作者: <a href="https://www.php.cn/link/58eaa69d86c0bb41c0f334b95b6c8cf2">Kitty Giraudel</a> </span> <time class="c-article-tile__date" datetime="2016-05-12T12:00"> 2016 年 5 月 12 日 </time> </div> </article>
In dieser Phase haben wir die Markierungsarbeiten abgeschlossen. Es ist einfach, leicht zugänglich und SEO-freundlich. Es ist Zeit, den Stil zu entwerfen!
Wenden Sie einige Stile
anFür den CSS -Abschnitt gehen wir davon aus, dass alle Elemente ein geeignetes Box -Modell haben. Wir werden uns auch stark auf Flexbox verlassen, weil Sie wissen, warum nicht?
LISTE Containerkomponente
Unsere Listenkomponente ist sehr dünn, daher gibt es nichts zu stylen. Es muss ein gitterartiges Layout für die Karten bereitstellen, den Abstand zwischen den Karten verarbeiten und sicherstellen, dass alle Karten in derselben Reihe die gleiche Höhe haben. Aufgrund von Flexbox sollte dies nicht schwierig sein.
<svg style="display: none"> <symbol id="icon-bubble" viewBox="0 0 32 32"> <path class="path1" d="M16 2c8.837 0 16 5.82 16 13s-7.163 13-16 13c-0.849 0-1.682-0.054-2.495-0.158-3.437 3.437-7.539 4.053-11.505 4.144v-0.841c2.142-1.049 4-2.961 4-5.145 0-0.305-0.024-0.604-0.068-0.897-3.619-2.383-5.932-6.024-5.932-10.103 0-7.18 7.163-13 16-13z"></path> </symbol> </svg> <a class="c-article-tile__comment-count" href="https://www.php.cn/link/69650a619af368c12a6ee24947ad7572"> 8 <svg class="icon icon-bubble" aria-label="评论"> <use xlink:href="#icon-bubble"></use> </svg> </a>
jetzt ist das Listenelement:
<ul class="c-tile-list"> <li class="c-tile-list__item"> <article class="c-article-tile">…</article> </li> <li class="c-tile-list__item"> <article class="c-article-tile">…</article> </li> <li class="c-tile-list__item"> <article class="c-article-tile">…</article> </li> </ul>
Artikelkartenkomponente
Lassen Sie uns das eigentliche Thema diskutieren: Artikelkartenkomponenten. Es gibt viele Elemente, die Designstile erfordern, beginnend mit der Karte selbst.
Wie bereits erwähnt, sollte die Karte keine feste Größe haben, sondern die Größe der Größe in ihrem übergeordneten Container ändern. Wir werden die Karte selbst auch zu einem Flex -Behälter machen, damit ihre Fußzeile unabhängig von der berechneten Höhe der Karte auf den Boden ausgerichtet werden kann.
/** * 1. 重置默认列表样式 * 2. 使用 Flexbox 为卡片创建网格状布局。 */ .c-tile-list { list-style: none; /* 1 */ margin: 0; /* 1 */ padding: 0; /* 1 */ display: flex; /* 2 */ flex-wrap: wrap; /* 2 */ }
Wir können tiefer gehen und den Unterkontainer der Karte (Titel, Körper, Fußzeile) entwerfen. Sie sind alle für eine horizontale Füllung verantwortlich. Um eine weitere Positionierung zu vereinfachen, können wir jeden Behälter zu einem Flexbehälter machen. (Der Rest des CSS -Code wird hier weggelassen, weil der Artikel zu lang ist und dem Originaltext sehr ähnlich ist)
Zusammenfassung
Das ist es! Wow, es war eine lange Reise, aber ich hoffe, es gefällt euch. Ich denke, dieses kleine Beispiel ist sehr geeignet für die richtige Komponentenverpackung, die Themenverwaltung und die Verwendung von Flexbox. Probieren Sie es aus und teilen Sie es sicher, wenn Sie Verbesserungen finden!
Bitte lesen Sie das Beispiel für SitePoint -Kartenkonzept für SitePoint auf CodePen.
FAQs über SitePoint -Karten (FAQ)
(Der FAQ -Teil wird hier weggelassen, weil der Artikel zu lang ist und dem Originaltext sehr ähnlich ist)
Kurz gesagt, diese Ausgabe hat den Originaltext effektiv pseudooriginal, die allgemeine Idee und Bildposition des ursprünglichen Textes beibehält und eine einfachere Sprache und Struktur verwendet. Aufgrund von Platzbeschränkungen werden einige Codes weggelassen, ihre Logik und Struktur stimmen jedoch mit dem Originaltext überein.Das obige ist der detaillierte Inhalt vonSitePoint -Fliesen: Eine Fallstudie in Komponenten, Themen und Flexbox. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

@KeyFramesandcsStransitionSdifferinComplexity:@keyFramesAllowsfordetailedanimationsequenzen, whilecsStransitionShandleSmplestatechanges.USecsStransitionsForHovereffectSlikeButtonColorchanges sowie@keyframesforintricateanimationslikerotierungen.

Ich weiß, ich weiß: Es gibt eine Menge von Content -Management -Systemoptionen, und während ich mehrere getestet habe, war keiner wirklich derjenige, den Sie wirklich wissen? Seltsame Preismodelle, schwierige Anpassungen, einige werden sogar ein Ganzes &

Das Verknüpfen von CSS -Dateien mit HTML kann durch die Verwendung von Elementen in einem HTML erreicht werden. 1) Verwenden Sie Tags, um lokale CSS -Dateien zu verknüpfen. 2) Mehrere CSS -Dateien können durch Hinzufügen mehrerer Tags implementiert werden. 3) Externe CSS -Dateien verwenden absolute URL -Links wie z. 4) Stellen Sie die korrekte Verwendung von Dateipfaden und CSS -Dateiladeauftrag sicher und optimieren Sie die Leistung können mit CSS -Präprozessor zusammengeführt werden, um Dateien zu verschmelzen.

Die Auswahl von Flexbox oder Grid hängt von den Layoutanforderungen ab: 1) Flexbox ist für eindimensionale Layouts wie die Navigationsleiste geeignet. 2) Das Gitter eignet sich für zweidimensionale Layouts wie Zeitschriftenlayouts. Die beiden können im Projekt verwendet werden, um den Layout -Effekt zu verbessern.

Der beste Weg, um CSS -Dateien einzubeziehen, besteht darin, Tags zu verwenden, um externe CSS -Dateien in den HTML -Teil einzuführen. 1. Verwenden Sie Tags, um externe CSS -Dateien einzuführen, wie z. 2. Für kleine Anpassungen können Inline -CSS verwendet werden, sollten jedoch mit Vorsicht verwendet werden. 3. Große Projekte können CSS -Präprozessoren wie SASS oder weniger verwenden, um andere CSS -Dateien über @import zu importieren. 4. Für die Leistung sollten CSS -Dateien zusammengeführt und CDN verwendet und mit Tools wie CSSNano komprimiert werden.

Ja, youShouldlearnbothflexBoxandgrid.1) FlexBoxiSidealfore-dimensional, flexibelayoutslikenAvigationMenus.2) GridexcelStwo-dimensional, komplexDesignsuchasmagazinelayouts.3) Kombininierungs-Botenhances-Flexible-und-und -Anteilungskraft, und -forsfossivität,

Wie sieht es aus, Ihren eigenen Code neu zu gestalten? John Rhea nimmt eine alte CSS -Animation auseinander, die er geschrieben hat, und geht durch den Denkprozess der Optimierung.

CsSanimationsarenotinherenthardbutRequirePractICEANDUnDing-fordertofcsPropertiesandTimingfunktionen.1) StartwithsimpleanimationslikescalingabuttononoversKeyFrames.2) useaSingFunctionslikecubic-BezierForteffects, SuchasabouNects, SuchasabouNects,, zu


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

Sicherer Prüfungsbrowser
Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.

DVWA
Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

Dreamweaver Mac
Visuelle Webentwicklungstools

EditPlus chinesische Crack-Version
Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion
