Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > General Coding > Coding Tutorials
You last visited: Today at 07:56

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[Tutorial Nr. 1] Zusammenspiel von CSS und DIV

Discussion on [Tutorial Nr. 1] Zusammenspiel von CSS und DIV within the Coding Tutorials forum part of the General Coding category.

Reply
 
Old   #1
 
Who dis?'s Avatar
 
elite*gold: 3
Join Date: Apr 2009
Posts: 3,899
Received Thanks: 1,807
CSS und DIV

DIV-Tutorial


Ein paar Kenntnisse sollten vorhanden sein.

1. Basis
Wir legen uns ein ganz normales HTML-Dokument mit dem HTML-Grundgerüst an.

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<title>Seiten-Titel</title> 
</head> 
<body> 
</body> 
</html>
auf xmlns und META wurde absichtlich verzichtet

Als erstes steht dort die Dokumenttyp-Deklaration, also die Angabe zur momentan verwendeten HTML-Version. Die ist wichtig (z.B. für den auslesenden Web-Browser), da es viele unterschiedliche Versionen von HTML gibt und wir uns ja für eine entscheiden müssen Hier benutzen wir, wie man unschwer erkennen kann, die Version 4.01.

Das alles ist generell für einen DIV-Aufbau unwichtig, gehört aber zu einem vernünftigen Seitengerüst und wird deswegen hier erklärt!

2. Stylesheet
Es gibt drei unterschiedliche Varianten, in einem HTML-Dokument CSS anzuwenden:

-externen Stylesheet importieren
-innerhalb des Dokumentes deklarieren
-innerhalb der Tags deklarieren

Klären wir erst einmal, was ein Stylesheet und CSS überhaupt ist.

CSS (Cascading Style Sheet) ist eine Sprache zum Formatieren von HTML-Elementen. Es gibt auch eine HTML-Formatierung, doch CSS bietet weit aus mehr Möglichkeiten, zum Beispiel Rahmen, Farben, Innen- Außenabstände, Positionen etc.

Der Unterschied HTML- und CSS-Formatierung:

Code:
<table background="bild.gif">
dies wäre eine HTML-Formation. Nicht besonders valide und kein Standard. So ist es auch zum Beispiel mit dem Attribut height

Code:
<table style="background:url("bild.gif");">
dies wäre nun eine CSS-Formation und gleichzeitig ein Beispiel für unsere dritte Möglichkeit, CSS in einem Dokument anzuwenden. Näheres dazu weiter unten...

Die zweite Möglichkeit, CSS innerhalb eines Dokumentes anzuwenden ist, das Stylesheet in den Header des HTML-Grundgerüstes zu schreiben:

Code:
<html> 
<head> 
<style type="text/css"> 
  
</style> 
</head> 
<body> 
</body> 
</html>
Hier haben wir zwischen den Head-Segmenten einen neuen Stil (engl. style) eröffnet, vom Typ CSS. Dazwischen können wir nun unsere HTML-Elemente ansprechen. Solch eine Deklaration beginnt immer mit einer Identifikation des Elementes / der Elemente gefolgt von einer öffnenden geschweiften Klammer und einer geschlossenen geschweiften Klammer. Zwischen diese Klammern schreiben wir unsere Formationen, zum Beispiel welche Farbe der Hintergrund eines Div-Containers haben soll. Hinter jede Formatierung schließt ein Strichpunkt ab.

Code:
div { 
   background: #000000; 
   }
1. Möglichkeit: der Tag
Generell kann man gesamte HTML-Tags in einem Stylesheet ansprechen. Obiges Beispiel würde nun alle <div>-Tags im gesamten Dokument ansprechen. Würden wir dort table stehen haben, würden alle Tabellen des Dokumentes angesprochen und entsprechend formatiert werden.

2. Möglichkeit: die ID
Will man nur ein einziges Element ansprechen, weißt man diesem einfach eine ID zu. Diese ID darf nur einmal im gesamten Dokument genannt und verteilt werden, ansonsten ist das nicht valide!

Code:
<style type="text/css"> 
#meinDiv { 
   background: #000000; 
   } 
</style> 
  
<div id="meinDiv"></div>
Eine ID-Deklaration wird immer nur das Nummern-Zeichen # eingeführt. Innerhalb des HTML-Tags muss natürlich auch die ID mittels des Attributes ID benannt werden. Wie gesagt, pro Element nur [/u] ID.

3. Möglichkeit: die Klassen
Mit ID konnten wir nun ein bestimmtes Element ansprechen, wollen wir aber eine Regel erstellen, welche für mehrere Elemente gleichzeitig gilt, benutzen wir die Klasse.

Code:
<style type="text/css"> 
.rot { 
   color: #ffff00; 
   } 
</style> 
  
<a href="#" class="rot">Startseite</a> 
<a href="#" class="rot">Impressum</a> 
  
<a href="#">Kontakt</a>
Eine Klasse wird im Stylesheet immer durch einen Punkt definiert. Wir haben zum Beipiel wie oben genannt mehrere Links, die alle in der Schriftfarbe rot erscheinen sollen. Nun wäre es ja Schwachsinn, jedem Link eine individuelle ID zuzuweisen und dann im Stylesheet ein paar Mal die gleiche Formation für mehrere IDs zu schreiben. Deswegen nutzt man Klassen. Die Links haben nun alle die Klasse rot, also werden alle Elemente, welche dieser Klasse zu gewiesen sind, in der Schriftfarbe rot formatiert. Der letzte Link hat keine Klassen-Zuweisung bekommen, dieser wird standardmäßig erscheinen.

Und nun zu guter Letzt auch noch die erste der oben genannten Möglichkeiten, CSS innerhalb eines Dokumentes anzuwenden, nämlich das exportieren externer Stylesheet-Dateien. Diese Dateien besitzen die Endung .css. Innerhalb der Dateien wird munter darauf los getextet, also ohne einführenden <style>-Tags. Man führt sofort das erste Element, die erste Klasse oder ID auf.
Innerhalb des HTML-Dokumentes müssen wir nun diese Datei einfügen.

Code:
<link type="text/css" rel="stylesheet" href="layout.css" />
Dies schreiben wir zwischen die <head></head>-Tags im Dokument. Link (dtsch. Verknüpfung) beinhaltet hier drei Attribute. Erst einmal die bekannte Typisierung, gefolgt von rel (engl. relation / verwandt) und leitet eine logische Dateibeziehung ein. Hier in unserem Fall natürlich das Stylesheet. Mit href (engl. hyper reference / Hyper(text)-Referenz) geben wir das Verweisziel an, wo unser Stylesheet liegt. In diesem Fall liegt es im gleichen Verzeichnis. Da der Tag <link> keinen abschließenden Tag (</link>) besitzt, beenden wir diesen mit einem Slash innerhalb des führenden Tags.
Somit ist unser Stylesheet eingebunden!

Für welche Art ihr euch entscheidet, bleibt euch überlassen. Ich binde meist ein externes Stylesheet ein, da diese sehr groß werden können und unnötig Platz im HTML-Dokument verbrauchen.

3. DIV-Container

Quote:
mediaevent.de schrieb:
Das <div>-Tag ist ein Behälter für weitere HTML-Elemente. Das öffnende und schließende <div>-Tag führen jeweils zu Zeilenumbrüchen – div-Tags bilden Block-Elemente. Ein div-Element bringt keine weiteren Eigenschaften mit und ohne Inhalte nimmt ein DIV-Element ohne Höhen- und Breitenangaben durch CSS-Regeln keinen Platz im HTML-Dokument ein.
Ein DIV-Container sieht so aus:

Code:
<div> </div>
Ein einleitender Tag und einen schließenden Tag. Dieses Beispiel würde nun, wie oben zitiert, keinen Platz im Dokument nehmen, da es leer ist. Verleihen wir dem DIV doch einmal ein paar Formatierungen.

Code:
div { 
   border: 1px solid #000000; 
   height: 50px; 
   width: 200px; 
   }


Ein 50px hoher und 200px breiter DIV-Container mit einem 1px-breiten, durchgehenden (solide) schwarzen (#000000) Rahmen (border).

Code:
<div>DIV 1</div> 
<p></p> 
<div>DIV 2</div>


Mit dem HTML-Element <p></p> habe ich zwischen den beiden DIV-Containern einen Absatz erzeugt, wie wir jetzt sehen, wird das bald nicht mehr nötig sein!

4. DIVs positionieren

Wir können unsere Container nach Belieben verschieben und auf dem Dokument platzieren.

Code:
div { 
   margin-top: 50px; 
   margin-left: 100px; 
   }
Unser Container nimmt nun im Dokument vom Seitenrand des Browser nach oben hin einen Abstand von 50px und zur linken Seite hin einen Abstand von 100px ein. Der Abstand nach rechts und unten ist, da er nicht definiert wird, 0px.

Code:
div { 
   margin: 50px; 
   }
Hier nimmt nun unser Container nach allen Seiten (links, rechts, oben und unten) einen Abstand von 50px ein.

Zusatz:
Abstand unten: margin-bottom: 50px;
Abstand rechts: margin-right: 50px;

Außerdem können wir dem Container noch ein bestimmtes Positions-Attribut mitgeben.

Code:
div { 
   position: absolute; 
   }
Folgende Werte für position sind möglich:

Quote:
selfhtml schrieb:
static = keine spezielle Positionierung, normaler Elementfluss (Normaleinstellung).
relative = relative Positionierung (Verschiebung), gemessen an der Normalposition oder Anfangsposition des Elements selbst.
absolute = absolute Positionierung, gemessen am Rand des nächsthöheren Vorfahrenelements, das nicht die Normaleinstellung position:static aufweist. Scrollt mit.
fixed = absolute Positionierung, gemessen am "Viewport", d.h. am Browserfenster. Bleibt beim Scrollen stehen.
Nun können wir auch unsere Container fein säuberlich voneinander trennen, ohne HTML-Tags zu nutzen.

Code:
<div>DIV 1</div> 
<div style="margin-top: 10px;">DIV 2</div>
Die beiden Container haben nun einen Abstand zueinander von 10px.

5. Let us float!



Das sieht doch schon etwas nach Layout aus, oder
Oben der Header und darunter zwei Boxen mit unterschiedlichen Inhalten.

Code:
div { 
   height: 50px; 
   } 
.box { 
   width: 195px; 
   border: 1px solid #000000; 
   }
Nun verbinden wir mehrere Ansprech-Möglichkeiten in einem Stylesheet. Ich möchte, dass alle DIV-Container eine Höhe von 50px haben, spreche daher generell alle Container an. Darunter weise ich einer Klasse eine BReite von 195px, sowie einen Rahmen zu.

Code:
<div style="width:400px;"> 
<div style="width:400px; border:1px solid #000000; margin-bottom:10px;">DIV 1</div> 
<div class="box" style="float:right;">DIV 2</div> 
<div class="box" style="float:left;">DIV 3</div> 
</div>
Mein erster Container umschließt alle nachfolgenden Container. Er hat die Breite 400px. Darin erstelle ich mir einen ebenfalls 400px breiten Container mit einem schwarzen Rahmen und einem Abstand nach unten von 10px. Das soll mein "Header" ergeben.

Darunter erstelle ich meine zwei Boxen. Diese sind der Klasse "box" zugewiesen, welche wir ja oben definiert haben. Was allerdings dort nicht definiert ist, ist der float-Wert. Float bedeutet soviel wie "schwimmen" oder "schweben" und ist eigentlich eine Positionierung der Container. Man bestimmt hiermit, dass nachfolgende Elemente das aktuelle Element bzw. den aktuellen Bereich umfließen.
Hier "schweben" unsere Blöcke einmal nach rechts und einmal nach links, sie sind bestrebt, soweit wie möglich die jeweilige Richtung einzunehmen.

Ein kleines Rechenexempel zeigt uns den Abstand zwischen den beiden Blöcken:

Quote:
ein Container mit 400px ist die Begrenzung. Darin befinden sich jeweils zwei Container der Breite 195px, macht zusammen eine Gesamt-Containerbreite von 390px. Da die Container jeweils nach außen streben, haben wir nun einen Abstand von 400-390=10px dazwischen
6. Layout mit DIV-Containern



Oben der Header, darunter links die Navigation, in der Mitte der Inhalt und rechts Boxen für Login, News usw. Ein ganz simples Standard-Layout.

Code:
div { 
   height: 50px; 
   } 
.box { 
   border: 1px solid #000000; 
   margin-right: 10px; 
   }
Wir ändern unser Stylesheet und nehmen bei der Klasse die Breite heraus und fügen einen Seitenabstand rechts von 10px ein.

Code:
<div style="width:400px; border:1px solid #000000; margin-bottom:10px;">DIV 1</div> 
<div class="box" style="float:left; width:50px;">DIV 2</div> 
<div class="box" style="float:left; width:275px;">DIV 3</div> 
<div class="box" style="float:left; width:50px;">DIV 4</div>
Hier nehmen wir nun unseren Begrenzungscontainer weg, denn wir lassen alles nach links floaten! Oben wieder unser Header, genau das gleiche wie eben.
Darunter haben wir diesmal drei Boxen, welche wir alle nach links schweben lassen. Damit die Boxen nicht anstoßen, packen wir einen Seitenabstand rechts von 10px mit drauf.

Wollen wir nun wieder einen "normalen" Container (bsp.weise als Footer) darunter setzen, müssen wir erst das floaten wieder beenden. Dies machen wir mit der Eigenschaft clear. Clear kann, logischerweise, drei Werte annehmen (right, left, none). None (dtsch. nichts) ist Schwachsinn, denn dann haben wir auch nix gefloatet

Dem nachfolgenden Container (zum Beispiel der Footer, also ID footer) geben wir also dieses clear mit:

Code:
#footer { 
   clear: left; 
   }
Selbstverständlich können wir nur das clearen, was wir auch zuvor gefloatet haben
(float:left; --> clear:left



Und das würde dann unser Gesamtbild ergeben. Der letzte Container hat also nun den Float beendet und setzt sich ganz normal wieder unter die drei gefloateten Boxen.


Greetz
Who dis? is offline  
Thanks
1 User
Old 02/27/2010, 20:25   #2


 
Menan's Avatar
 
elite*gold: 0
The Black Market: 169/0/0
Join Date: Sep 2008
Posts: 9,484
Received Thanks: 3,109
Zwar lang!
Aber hat mir geholfen!
Sowas habe ich gesucht!
DANKE!
Menan is offline  
Reply


Similar Threads Similar Threads
[Tutorial]Cracking Tutorial
10/22/2012 - Tutorials - 79 Replies
Hi, wollte ja wie einige wissen vor kurzem einen Hack cracken. Leider hat mir keiner so wirklich geholfen und Tutorials gabs auch nicht. Also hab ich mich selbst durchgewurschtelt und schreib jetzt mal für alle andern eins. Den gecrackten Hack lege ich nicht bei, um zu vermeiden das der von jeden Newbie hier benutz und in 2 Wochen detected sind. Sollte aber auch mit jedem anderen Hack und Spiel funktionieren. Ich möchte mich ausserdem dafür entschuldigen das die ollydbg bilder etwas...
[Video Tutorial] - Very Easy Tutorial How to make your Own Wallhack in C++
09/01/2012 - Soldier Front Hacks, Bots, Cheats & Exploits - 16 Replies
Hello Everyone!Hellow Philippines - Mabuhay Pinoy Cheaters! Confidentials000 of GZP and Me Babyface21 ay iisa lang! Today i Will Teach you on How to Make Your Own Wallhack in C++ Very Simple By Video Tutorials Step by Step Part 1 - 3 Dont Ask me to Release my Private Wallhack coz i Need it to still Undetected
[Tutorial] XHTML Anfänger Tutorial
11/04/2009 - Tutorials - 7 Replies
Hi @, hier findet ihr ein relativ umfrangreiches Tutorial zu XHTML. DIE EINLEITUNG: Um mit einer Website zu beginnen, sollte man als Erstes die Grundlagen des World Wide Webs verstehen. Als allererstes sollte man sich darüber klar werden, dass eine Homepage nicht auf dem Computer gespeichert wird, sondern auf einem Server, der mit jedem PC der Welt in Kontakt treten kann. Er ist der Anbieter. Jeder Anbieter braucht Jemanden oder etwas, der das abruft, so etwas nennt man Client und...
[Tutorial] Vac Hack Tutorial + Video
10/03/2008 - Dekaron Exploits, Hacks, Bots, Tools & Macros - 72 Replies
VIDEO I MADE JUST FOR NOOBS -->http://youtube.com/watch?v=4frYI7r3OLQ<- - HOW TO CREATE A VAC HACK FOR 2MOONS bigworm Must have 3 things: Monster editor, Winhex , and duh 2moons
Tutorial iXFS *Updater* Tutorial
06/16/2008 - General Gaming Discussion - 5 Replies
THIS IS A PROGRAM CREATED BY MOOSE GIVE HIM CREDIT! This is what you need to update .xfs files like for Avatar Hack ( Avatar.xfs ) and (Graphics.xfs) for 360 angle/0delay/unlimited walk/swear hack. Download attachment. Extract the iXFS.exe to your Desktop DOWNLOAD A HACK LIKE Avatar Hack OR 360 Angle/Unlimited Walk/0 Delay/Swear Hack AND SAVE THEM TO YOUR DESKTOP!!!!!!!



All times are GMT +1. The time now is 07:57.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.