Erstellen von Prototypen in HTML und CSS
- Kenntnisse erforderlich : Ein bisschen Mathematik in der Sekundarstufe
- Benötigt : Texteditor (optional), moderner Browser
- Projektzeit : 1 Stunde
Wenn Sie bereits wissen, wie man eine einfache Webseite erstellt, werden Sie hier wahrscheinlich nichts lernen. Wenn Sie dies jedoch nicht tun oder Ihr Wissen aus der Zeit tabellenbasierter Layouts stammt, erhalten Sie eine gute Grundlage für die Erstellung von Prototypen in HTML und CSS.
Warum Prototyp im Code?
Wenn Sie einen Prototyp für das Web erstellen, ist es sinnvoll, ihn in seiner natürlichen Umgebung zu erstellen, da er eine so reale Erfahrung bietet, wie Sie es sich erhoffen können. Wenn Sie wissen, wie Sie Ihre Entwürfe erstellen, können Sie auch eine größere Affinität zu Entwicklern entwickeln. Sie sind offener für Ihre Ideen und können auch ihre besser kommunizieren.
Es hat auch den Vorteil, dass Sie alle Vorteile des Internets voll ausschöpfen können. Ihr Prototyp kann sich an die Breite des Browserfensters anpassen, ein grafisches Drahtmodell jedoch nicht. Dies ist nützlich, wenn Sie demonstrieren möchten, wie sich Ihre Site bei unterschiedlichen Bildschirmbreiten anpasst.
Was ist mit Frameworks?
Frameworks wie 960 sind wirklich nützlich für das Prototyping, aber bevor Sie sich mit einem dieser Themen befassen, ist es hilfreich, die Grundlagen zu verstehen, wie es zuerst funktioniert. Sobald Sie wissen, wie alles zusammenpasst, sind Sie viel besser vorbereitet.
Annahmen
Es gibt einige Annahmen, die ich zu Ihrem Prototyp machen werde:
- Es wird nur in modernen Browsern angezeigt, auch während Benutzertests und wenn der Link an einen Client gesendet wird.
- Ihr Code wird nicht live geschaltet. Ich werde nicht darüber sprechen, wie man auf eine Weise baut, die optimiert oder so semantisch ist, wie Live-Code sein sollte.
Das Testen in älteren Browsern und die Codeoptimierung passen nicht in diesen Artikel und wären für einen schnellen Prototyp übertrieben. Wenn Sie jedoch mit echten Benutzern testen, berücksichtigen Sie die Geschwindigkeit des Seitenladens.
Einstieg
Wenn Sie ein Design haben, drucken Sie es zunächst aus und beschriften Sie es.
- Zeichnen Sie Kästchen um Dinge für das Layout. Wie viele Spalten gibt es? Zeichne um diese herum.
- Wie breit sind diese Kästchen und Spalten?
- Beachten Sie die Haupttextelemente wie Überschriften, Absätze, Listen, Bilder und Links.
- Was sind die gängigen Stile? Was sind die Standardtextstile, Linkfarben und Überschriftengrößen?
Jetzt können wir mit dem Bau beginnen. Wenn Sie einen Code-Editor haben, erstellen Sie eine Datei mit dem Namen 'index.html' und fügen Sie den folgenden Code ein. Wenn Sie dies nicht tun, können Sie Remy Sharp's sofort im Browser folgen jsbin.com . (Keine langwierige Anmeldung oder Download erforderlich.)
Struktur
Dies ist eine Webseite auf ihrer grundlegendsten Ebene:
- < html >
- < Kopf >
- < Meta Zeichensatz = 'utf-8' />
- < Titel > Seitenname Titel >
- Kopf >
- < Körper >
- < p > Seiteninhalt p >
- Körper >
- html >
Alles in unserem Tags sind Informationen für den Browser und werden auf unserer Seite nicht angezeigt. Das Bit innerhalb der Tags ist der Name der Seite und wird in die Browser-Registerkarte eingefügt. Alle unsere Seiteninhalte fallen in die Stichworte.
Das erste, was wir tun werden, ist unsere Grundstruktur einzurichten. Normalerweise beginne ich damit, den Inhalt zu markieren und mich daraus herauszuarbeiten, aber Menschen, die mit HTML noch nicht vertraut sind, fällt es oft leichter, zunächst darüber nachzudenken, wie Inhalte gruppiert werden.
Dazu füge ich in den Hauptseitenabschnitten Folgendes hinzu: Stichworte. Diese Tags werden verwendet, um Inhaltsbits zu gruppieren. Verschachtelt in der Tag Ich habe Text hinzugefügt Das 'class =' bit ist ein Label, das wir als Hook verwenden, um Inhalte zu formatieren. Wir werden in Kürze darauf zurückkommen. Beachten Sie die Einrückung und die Art und Weise, wie ich die öffnenden und schließenden Tags ausgerichtet habe. Versuchen Sie, Ihren Code leicht lesbar zu halten, sonst geraten Sie durcheinander. Sie können auch keine eigenen HTML-Tags erstellen, aber es gibt viele zur Auswahl. Hier ist eine HTML-Spickzettel Sie können drucken und beziehen. Wir werden jetzt damit beginnen, den Inhalt mit CSS (Cascading Style Sheets) zu gestalten. Bei HTML geht es darum, was der Inhalt ist, und bei CSS geht es darum, wie dieser Inhalt aussieht. Ich beginne gerne damit, alles mit grellen Hintergrundfarben zu versehen, damit ich sehen kann, wo sich die Dinge auf der Seite befinden. In meinen Beispielen füge ich alle meine CSS-Stile vor dem hinzu Tag, damit wir alles auf einer Seite sehen können. Wenn Sie jedoch mehr als eine Seite erstellen, ist es besser, ein separates Stylesheet zu erstellen und extern darauf zu verlinken. Erstellen Sie dazu eine neue Datei im selben Verzeichnis wie index.html mit dem Namen styles.css, und fügen Sie in Ihrer index.html-Datei dieses Codebit vor dem hinzu Etikett. Alle Ihre Stile werden hier leben. Wenn Sie jsbin verwenden, öffnen Sie a Tag vor Ihrem Tag, fügen Sie den folgenden Code ein und schließen Sie ihn mit a . Alle Inhalte, die wir in a eingewickelt haben Tag haben einen hellrosa Hintergrund gegeben. Ich habe diesen auch eine Höhe hinzugefügt, damit Sie klarer sehen können, was passiert, aber wir werden dies später entfernen, wenn der richtige Inhalt darin enthalten ist. Was ist, wenn wir jeden Inhaltsblock anders gestalten möchten? Unter den Stilen, die wir gerade hinzugefügt haben, aber vor dem Tag, wir werden Folgendes hinzufügen: Beachten Sie die amerikanische Schreibweise von 'Farbe'. Erinnere dich an die class = '' Bits, die wir unseren HTML-Tags hinzugefügt haben? Wir verwenden diese Klassennamen als Hooks zum Stylen. Das . Vor dem Wort 'Kopfzeile', 'Inhalt' und 'Fußzeile' wird angezeigt, dass dies eher ein Klassenname als der Name eines Elements ist. (Wir haben keine hinzugefügt . vor dem div und p, weil sie eher reine HTML-Elemente als Klassennamen sind.) Sie können eine Klasse beliebig benennen, solange sie nicht mit einem Symbol oder einer Zahl beginnt und alle aus einem Wort oder einer Zeichenfolge bestehen müssen. Es lohnt sich jedoch, sorgfältig über die von Ihnen verwendeten Namen nachzudenken. Um in einer agilen Umgebung effektiv zu sein, muss unser Prototypcode sein: Jetzt wissen wir, wie man gezielt auf Inhaltsblöcke abzielt, und beginnen mit dem Layout. Das Design, das ich gemacht habe, ist in Pixel, aber flexible Layouts sind cool, so dass wir unsere Pixel mit ein bisschen Mathematik der Sekundarstufe in Prozentsätze umwandeln. Die Gesamtbreite unseres Designs beträgt 960px. Wir haben zwei Spalten, eine mit einer Breite von 720 Pixel und eine mit einer Breite von 220 Pixel. (Dies ergibt eine Lücke von 20 Pixel zwischen den Spalten.) Die Hauptspalte, der wir die Klasse 'Inhalt' zugewiesen haben, befindet sich links, die kleinere Spalte mit der Klasse 'Anzeigen' rechts. Die Kopf- und Fußzeile sind 960 Pixel breit. Wir können Inhaltsblöcke in CSS positionieren, indem wir den Dingen sagen, dass sie schweben sollen. Wenn wir etwas erzählen 'float: left' Wir sagen ihm, er soll in die obere linke Ecke seines enthaltenen Elements schieben und anhalten, wenn ihm etwas im Weg steht. 'schweben rechts' sagt ihm, er solle in die obere rechte Ecke schweben. Es ist ein bisschen wie links und rechts Text ausrichten, aber für Inhaltsblöcke. Wir müssen den Blöcken auch die Breite geben, sonst wird standardmäßig die volle Breite ihres Inhalts verwendet und sie werden nicht nebeneinander sitzen. Fügen Sie am Ende Ihrer Stile Folgendes hinzu: Ich habe neben den Breiten einen CSS-Kommentar hinzugefügt, damit ich mich daran erinnern kann, was sie ursprünglich in Pixel waren. Kommentare sind sehr nützlich für die Dokumentation, verwenden Sie sie großzügig. Ich habe es auch der Fußzeile gesagt 'klar: links', Das ist, als würde man es auf eine neue Zeile zwingen. Es füllte den verbleibenden Platz, als wir die Float-Regeln hinzufügten, und stieg neben dem Anzeigenblock auf, wo wir es nicht wollten. Sie werden wahrscheinlich bemerkt haben, dass unser Text bündig am Rand der Blöcke anliegt. Wir sollten ihm etwas Luft zum Atmen geben, damit wir dem Inhalt etwas Polster hinzufügen. Dadurch wird der Text im Container von den Rändern weggezogen. In meinem Design habe ich diese Polsterung als 20px notiert, was 2,08% entspricht. Wir werden auch unten einen Rand hinzufügen, um die Blöcke voneinander wegzudrücken, damit sie sich nicht berühren. Dies kann als Pixel bleiben, da nur die Breiten flexibel sein werden. Ich habe die Stile für die Inhalts-, Anzeigen- und Headerblöcke mit einem Komma gruppiert, da beide dieselben Eigenschaften haben. Das Vornehmen von Änderungen ist viel schneller, wenn Sie Stile gruppieren können. Ups, unsere Blöcke sitzen nicht mehr nebeneinander. Dies liegt daran, dass beim Hinzufügen von Auffüllungen die Gesamtbreite des Blocks erhöht wird. Wir gehen zurück und ändern die Breiten, um die Polsterung zu berücksichtigen, indem wir die zusätzlichen 2,08% entfernen, die links und rechts vom Inhaltsblock hinzugefügt wurden. Verwirrt darüber, warum dies passiert? Hier finden Sie ausführlichere Informationen zu Polsterung und Rand . Ich habe auch eine eingerichtet interaktive Demo in jsbin von dem, was wir bisher haben . Um uns Zeit zu sparen, verwenden wir einen Dienst namens placehold.it Platzhalterbilder zur Seite hinzufügen. Dies erzeugt Bilder in allen von uns gewählten Dimensionen. Ich werde unseren ersten im HTML-Code hinzufügen Styling
div {
Klassennamen auswählen
Layout
Bilder