Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
modul:m287:learningunits:lu02:einfache-selektoren [2025/02/28 07:34] kdemircimodul:m287:learningunits:lu02:einfache-selektoren [2025/02/28 07:51] (aktuell) kdemirci
Zeile 9: Zeile 9:
 ==== Übersicht der einfachen CSS-Selektoren ==== ==== Übersicht der einfachen CSS-Selektoren ====
  
 +| **Selektor** | **Bezecihnung** | **Auswahl** | **HTML-Beispiel** |
 +| <color #ed1c24>element {...}</color> | Typselektor | HTML-Element mit dem Namen element| <color #ed1c24><figure></color> |
 +| <color #ed1c24>.klname</color> | Klassenselektor | Element mit der Klasse klname | <color #ed1c24><p class="klname"></color> |
 +| <color #ed1c24>#elemid</color> | ID-Selektor | Element mit der ID elemid | <color #ed1c24><p id="elemid"></color> |
  
-{| +==== HTML-Elemente mit dem Typselektor ansprechen ==== 
-+ 
-Selektor +Der Typselektor (alias Elementselektor) spricht die HTML-Elemente direkt mit dem Elementnamen an. Angewendet wird diese Regel auf alle Elemente desselben Typs im HTML-Dokument. Dabei ist es irrelevant, an welcher Stelle im HTML-Dokument diese Elemente geschrieben sind, welcher Klasse diese zugehören oder welchen Bezeichner sie haben. 
-! + 
-Bezecihnung +**Beispiel**\\ 
-+Bei den HTML-Elementen <header>, <nav> und <footer> wird der Text zentriert ausgerichtet und ein schwarzer Rahmen von 1 Pixel Dicke gezogenDer Abstand zum oberen nächsten Element beträgt bei diesen Elementen immer 5 PixelAlle HTML-Elemente <h1und <abbr> werden in grauer Farbe angezeigt. Jedes HTML-Element <p> bekommt einen grauen gepunkteten Rahmen. 
-Auswahl + 
-! +**Beispiel eines Stylesheets mit nur Typselektoren.**\\ 
-HTML-Beispiel +<code css> 
-|+/* Schwarzer Rahmen, 
-| +   Zentrierter Text, 
-<color #ed1c24>element {...}</color> +   5 Pixel Abstand von oben */ 
-+header, 
-Typselektor +nav, 
-+footer {  
-HTML-Element mit dem Namen element  +  text-align:center; 
-| +  border: 1px solid black; 
-<color #ed1c24><figure></color> +  margin-top: 5px;
-|-+
 } }
  
 +/* Grauer Text */
 +h1, abbr { 
 +  color: gray; 
 +}
 +
 +/* Grauer gepunkteter Rahmen */
 +p { 
 +   border: 1px dotted gray; 
 +}
 +</code>
 +
 +**Beispiel: Der Aufruf des Stylesheets über die HTML-Seite. **
 +<code>
 +<!doctype html>
 +<html>
 +  <head>
 +    <title>Typselektoren</title>
 +    <meta charset="UTF-8">
 +   <link rel="stylesheet" type="text/css" href="style.css">
 +  </head>
 +  <body>
 +  <header>Kopfzeile</header>
 +  <nav>Navigation</nav>
 +  <main>
 +  <h1>Typselektoren</h1>
 +  <p>Ein solcher Typselektor spricht die <abbr>HTML</abbr>-Elemente mit dem Elementnamen direkt an. </p>
 +  <p class="wichtig">Bei XML-Dokumenten muss auf die Groß- und Kleinschreibung des Selektors und dem anzusprechenden Element geachtet werden.</p>
 +  </main>
 +  <footer>Fußzeile</footer>
 +  </body>
 +</html>
 +</code>
 +
 +===== Klassenselektor =====
 +
 +Mit dem Klassenselektor werden HTML-Elemente gewählt, die zu einer bestimmten Klasse gehören. Ein bestimmten Klassennamen wird mit dem globalen HTML-Attribut class für (fast) alle Elemente vergeben
 +
 +**Beispiel**\\
 +Das HTML-Element <p> wird mit dem Klassennamen <hinweis> selektiert, indem der Klassenname mit einem Punkt getrennt (ohne Leerzeichen) direkt hinter den Typselektor gesetzt wird.
 +
 +HTML-Code:
 +<code>
 +<p class="hinweis">Ein Absatztext ...</p>
 +</code>
 +
 +CSS-Code nur auf p-HTML-Elemente anwendbar:
 +<code>
 +p.hinweis { color: red; }
 +</code>
 +
 +oder CSS-Code auf jedes HTML-Elemente anwendbar:
 +<code>
 +.hinweis { color: red; }
 +</code>
 +
 +**Beispiel**
 +HTML-Elemente können auch mehrere Klassen auf einmal verwenden. Hier werden dem p-Element die beiden Klassen hinweis und bigfont zugewiesen.
 +
 +<code>
 +<p class="hinweis bigfont">...</p>
 +</code>
 +
 +==== Beispiel ====
 +Nun ein einfaches HTML-Dokument, das diese Klassenselektoren verwendet und deren Anwendung demonstriert:
 +
 +  - Der erste Absatz mit dem p-Element verwendet keine Klasse, weshalb hier nur der Typselektor p mit der Anpassung der Schriftfamilie darauf angewendet wird. Dieselbe Schriftfamilie wird auch bei den anderen vier Absätzen verwendet.
 +  - Der zweite Absatz wird mit dem Klassenselektor p.hinweis formatiert, wo der Absatz von links um 50 Pixel eingerückt und ebenfalls links ein grüner Rand mit 10 Pixeln hinzugefügt wird. Der Abstand zu diesem Rand beträgt 5 Pixel.
 +  - Der dritte Absatz verwendet den Klassenselektor p.hinweis.warnung, wo alles recht ähnlich formatiert wird wie im zweiten Absatz.
 +  - Der vierte Absatz mit der Klasse warnung wird nicht formatiert, weil für diese Klasse keine Stilangaben notiert wurden. Wollen Sie für diesen vierten Absatz mit der Klasse warnung eine CSS-Regel mit einem Klassenselektor definieren, müssten Sie diese wie folgt notieren:
 +
 +**CSS**
 +<code css>
 +/* Datei: style.css */
 + 
 +/* Schwarzer Rahmen,
 +   Zentrierter Text,
 +   5 Pixel Abstand von oben
 + */
 +header,
 +nav,
 +footer { 
 +  text-align:center;
 +  border: 1px solid black;
 +  margin-top: 5px;
 +  padding: 5px;
 +  font-family: Verdana, Arial;
 +}
 +
 +/* Grauer Text
 + */
 +h1,
 +abbr {
 +  color: gray;
 +  font-family: Verdana, Arial;
 +}
 +
 +/* Schriftfamilie für p-Elemente
 + */
 +p { font-family: Verdana, Arial; }
 +
 +/* Absatztext für einen Hinweis
 + */
 +p.hinweis {
 +  margin-left: 50px;
 +  border-left: 10px solid green;
 +  padding-left: 5px;
 +}
 +
 +/* Absatztext für einen Hinweis als Warnung
 + */
 +p.hinweis.warnung {
 +  border-left: 10px solid red;
 +  border-top: 2px solid red;
 +  border-right: 10px solid red;
 +  border-bottom: 2px solid red;
 +  text-align: center;
 +}
 +
 +/* Schriftgröße auf 140%
 +   Hintergrundfarbe auf grau
 +*/
 +.kopffuss {
 +  font-size: 140%;
 +  background: #f5f5f5;
 +}
 +
 +/* Schriftgröße auf 130% 
 + */
 +.bigfont { font-size: 130%; }
 +
 +.warnung { color: blue; }
 +</code>
 +
 +**HTML**
 +<code html>
 +<!doctype html>
 +<html>
 +  <head>
 +    <title>Klassenselektor</title>
 +    <meta charset="UTF-8">
 +   <link rel="stylesheet" type="text/css" href="style.css">
 +  </head>
 +  <body>
 +  <header class="kopffuss">Kopfzeile</header>
 +  <nav class="bigfont">Navigation</nav>
 +  <main>
 +  <h1>Klassenselektor</h1>
 +  <p>Das p-Element ohne einer Klasse.</p>
 +  <p class="hinweis">Das p-Element mit der Klasse hinweis.</p>
 +  <p class="hinweis warnung">Das p-Element mit den Klassen hinweis warnung.</p>
 +  <p class="warnung">Das p-Element mit der Klasse warnung.</p>
 +  <p class="hinweis bigfont">Das p-Element mit den Klassen hinweis bigfont.</p>
 +  </main>
 +  <footer class="kopffuss">Fußzeile</footer>
 +  </body>
 +</html>
 +</code>
 +
 +===== ID-Selektoren =====
 +Mit dem ID-Selektor werden HTML-Elemente gewählt, welche eine bestimmte ID (anhand des id-Attributs) zugeordnet haben. Im Gegensatz zu Klassen sind IDs immer einzigartige Elemente in einem HTML-Dokument. Es darf nur einem Element im gesamten HTML-Dokument diese ID zugewiesen werden. Ein solcher ID-Selektor wird mit dem Rautenzeichen (oder Gatterzeichen – #), gefolgt von der ID notiert. Der ID-Selektor für <div id="special"> kann daher wie folgt notiert werden:
 +
 +<code>
 +div#special
 +</code>
 +
 +oder nur
 +
 +<code>
 +#special
 +</code>
 +
 +Der Vorteil von elementname#id im Gegensatz zu #id kann eventuelle Versehen desselben id-Attributwert vorbeugen. Eine Validierung deckt solche fehlerhaften Umstände sofort auf.
 +
 +**Beispiel**
 +
 +**CSS**
 +<code css>
 +/* Datei: style.css */
 + 
 +/* Schwarzer Rahmen,
 +   Zentrierter Text,
 +   5 Pixel Abstand von oben
 + */
 +#header,
 +#nav,
 +#footer { 
 +  text-align:center;
 +  border: 1px solid black;
 +  margin-top: 5px;
 +  padding: 5px;
 +  font-family: Verdana, Arial;
 +}
 +
 +/* Schriftgröße auf 140%
 +   Hintergrundfarbe auf grau
 +*/
 +#header,
 +#footer {
 +  font-size: 140%;
 +  background: #f5f5f5;
 +}
 +
 +div#main { margin: 20px; }
 +
 +/* Grauer Text
 + */
 +h1,
 +abbr {
 +  color: gray;
 +  font-family: Verdana, Arial;
 +}
 +
 +/* Schriftfamilie für p-Elemente
 + */
 +p { font-family: Verdana, Arial; }
 +
 +/* Absatztext für einen Hinweis
 + */
 +p.hinweis {
 +  margin-left: 50px;
 +  border-left: 10px solid green;
 +  padding-left: 5px;
 +}
 +
 +/* Absatztext für einen Hinweis als Warnung
 + */
 +p.hinweis.warnung {
 +  border-left: 10px solid red;
 +  border-top: 2px solid red;
 +  border-right: 10px solid red;
 +  border-bottom: 2px solid red;
 +  text-align: center;
 +}
 +
 +/* Schriftgröße auf 130% 
 + */
 +.bigfont { font-size: 130%; }
 +</code>
 +
 +**HTML**
 +<code html>
 +<!doctype html>
 +<html>
 +  <head>
 +    <title>Klassenselektor</title>
 +    <meta charset="UTF-8">
 +   <link rel="stylesheet" type="text/css" href="style.css">
 +  </head>
 +  <body>
 +  <div id="header">Kopfzeile</div>
 +  <div id="nav">Navigation</div>
 +  <div id="main">
 +  <h1>Klassenselektor</h1>
 +  <p>Das p-Element ohne einer Klasse.</p>
 +  <p class="hinweis">Das p-Element mit der Klasse hinweis.</p>
 +  <p class="hinweis warnung">Das p-Element mit den Klassen hinweis warnung.</p>
 +  <p class="warnung">Das p-Element mit der Klasse warnung.</p>
 +  <p class="hinweis bigfont">Das p-Element mit den Klassen hinweis bigfont.</p>
 +  </div>
 +  <div id="footer">Fußzeile</div>
 +  </body>
 +</html>
 +</code>
 +
 +===== Klassenselektor vs. ID-Selektor =====
 +Der Klassenselektor ist der Selektor mit dem Punkt, und der ID-Selektor ist der Selektor mit der Raute. Ebenso sollten Sie sich merken, dass Sie zwar jedes HTML-Element mit einer oder auch mehreren Klassen versehen können, aber grundsätzlich nur mit einer ID. Im Gegensatz zu Klassen müssen IDs in einem HTML-Dokument immer einzigartig sein. Daher darf eine bestimmte ID auch nur einmal in einem HTML-Dokument vorkommen. Auch ist es nicht erlaubt, einem HTML-Element mehr als eine ID zuzuweisen.
  
  • modul/m287/learningunits/lu02/einfache-selektoren.1740724484.txt.gz
  • Zuletzt geändert: 2025/02/28 07:34
  • von kdemirci