IST HTML und/oder CSS eine Programmiersprache?

5 Antworten

Nein, sie sind keine Programmiersprachen.

Man muss sich nur den Namen hinter der Abkürzung anschauen, um die Verwendung zu erkennen.

HTML= HyperText MarkupLanguage

CSS= Cascading Style Sheet

Beides sind also Sprachen, mit denen man gestalten kann.

Hauptsächlich werden sie bei der Internetseiten-entwicklung verwendet


medmonk  17.03.2018, 22:27
Beides sind also Sprachen, mit denen man gestalten kann.

Nein, Inhalte werden nicht mit beiden Sprachen gestaltet. HTML dient lediglich zum Strukturieren von Texten und anderer multimedialer Content wie Bilder, Grafiken oder Videos.

Dokumente die so mit HTML strukturiert wurden wiederum mit CSS formatiert werden (können) respektive mit Hilfe von CSS das Aussehen definiert wird. Ein prominentes Beispiel zwecks Veranschaulichung ist »CSS Zen Garden«.

Alle dort geteilten Designs auf dem selben Markup basieren. Ergo Struktur sauber, so wie es sich gehört, von der eigentlich Gestaltung getrennt ist.

Der Vollständigkeit halber jedoch erwähne, das es in älteren HTML Spezifikationen Elemente (Tags) und Attribute gab, die teilweise zur Gestaltung verwendet wurden. Jene sind in HTML5 jedoch nicht erlaubt (deprecated).

LG medmonk

0

HTML und CSS sind keine Programmiersprachen, sondern HTML ist eine Auszeichnungssprache und CSS eine Stylesheetsprache. Zentrales Merkmal einer Programmiersprache ist, dass sie die Implementierung, d.h. die konkrete Umsetzung der einzelnen theoretischen Strukturen, eines Algorithmus ermöglicht. Jedes Programm liegt einem Algorithmus zugrunde, der wiederum aus zahlreichen weiteren Algorithmen zusammengesetzt sein kann. Ein Algorithmus arbeitet nach dem Grundprinzip der Datenverarbeitung, dem sogenannten EVA-Prinzip (Eingabe → Verarbeitung → Ausgabe). Nun bestehen wesentliche Probleme in allen drei Schritten:

  1. Eingabe: HTML ermöglicht keine wirklichen Eingaben und pure HTML-Seiten können nur kaum auf Nutzeraktionen reagieren. Es existieren Elemente wie Links, die jedoch eher vom Browser verarbeitet werden und nicht durch HTML. Denn der DOM (Document Object Model), d.h. die Baumstruktur der einzelnen Elemente einer Website, wird einmalig beim Laden der Seite geladen. Von da an wird der HTML-Code nicht weiter betrachtet und spielt somit keine Rolle mehr. Dementsprechend kann HTML auch keine Eingaben empfangen. Gleiches gilt auch für CSS.
  2. Verarbeitung: Die verarbeitenden Elemente eines jeden Algorithmus setzen sich aus drei grundlegenden Strukturen zusammen: Sequenzen, Alternativen und Schleifen. Jedes Computerprogramm lässt sich aus diesen drei Elementen zusammensetzen. In HTML und CSS fehlen diese Elemente dagegen, sodass sich dadurch keine Logik umsetzen lässt. Eingaben, wenn denn welche möglich wären, könnten nicht verarbeitet werden.
  3. Ausgabe: HTML dient dazu, ein Dokument semantisch zu strukturieren, sprich die einzelnen vorkommenden Elemente (Absätze, Bilder, Überschriften, Buttons, Links, etc.) sowie deren Attribute (Klassen, IDs, Quellen, etc.) festzulegen und sie hierarchisch in einer Baumstruktur zu ordnen. Die visuellen Darstellungen, also Layout, Formatierungen und Design, können von HTML streng genommen nicht angepasst werden. Ohne CSS wäre jede HTML-Seite nämlich vollkommen leer, da kein Stil für die einzelnen Elemente angegeben ist. Es gäbe wie bei einem XML-Dokument keine Möglichkeit der visuellen Darstellung der Elemente. Man sieht bei purem HTML nur etwas, weil Browser generell einen Standard-CSS-Style besitzen. Grundsätzlich ist aber die Ausgabe durch HTML nicht möglich. Ebenso kann durch CSS allein keine Ausgabe erfolgen, weil CSS zwar das Aussehen von Elementen festlegen kann, doch wenn keine Elemente vorhanden sind, sieht man ebenfalls nichts.

Da HTML also nicht zur Implementierung eines Algorithmus genutzt werden kann, kann es sich dabei auch nicht um eine Programmiersprache handeln. Stattdessen hat sich der Begriff der Auszeichnungssprache bzw. Markup Language über die Jahre manifestiert. Eine Auszeichnungssprache dient der Gliederung und hierarchischen Strukturierung von Daten sowie der Beschreibung derer Eigenschaften, Zugehörigkeiten und Darstellungsformen. Dazu werden sogenannte Tags verwendet. Eine Auszeichnungssprache ist somit ein zentrales Element der in der heutigen Welt erstrebten Trennung von Inhalt und Darstellung, die sich in vielen Bereichen der Software etabliert hat und zunehmend auch in Bereichen, in denen sie vorher nicht vorkam, Einzug erhält. Das Web gilt mit HTML und CSS u.a. als einer der Vorreiter in dieser Hinsicht.

Wie du siehst, habe ich in meiner Antwort einige Begriffe verlinkt. Schau dir auch diese Seiten an, falls einzelne Dinge noch unverständlich sein sollten. Ansonsten kannst du natürlich auch gerne per Kommentar weitere Nachfragen stellen.

IST HTML und/oder CSS eine Programmiersprache?

Nein, keine der beiden!

HTML ist eine Auszeichnungssprache (HyperText Markup Language) mit einer leicht zu erelendenden Syntax. Sie ist essentieller Bestandteil des Internets und wird zum Strukturieren von Texten und anderem multimedialem Content (Bilder, Grafiken, Videos und Audio) verwendet.

CSS (Cascading Style Sheet [zu dt. gestufte Gestaltungsbögen]) ist hingegen eine einfache »Makrosprache«, in der vererbbare Regeln (rules) definiert werden können. Mit jenen Regel u.a. HTML Elemente in ihrem Aussehen und Verhalten angepasst werden.

Vereinfacht herunter gebrochen: Mit HTML werden Dokumente (semantisch korrekt) struktuiert. Deren Layout, Farben und Typografie anschließend wiederum über vererbbare Regel in CSS definiert werden. Bezüglich Webdesign und Entwicklung sind beide essentielle Grundlagen und sollten im Schlaf verherrscht werden.

Wenn du mehr über die HTML und CSS wissen oder gar lernen möchtest, dir gute Fachlektüre nahelege. Des weiteren mal beim »World Wide Web Consortium (W3C)« vorbei schauen kannst, um dir mal die Spezifikation(en) beider Sprachen durch zu lesen. Zum Lernen sind wiederum SelfHTML und das Mozilla Developer Network (MDN) gute Anlaufstellen.

An dieser Stelle sei auch kurz das HTML5 Handbuch von SelfHTML Mitbegründer Stefan Münz erwähnt. Das HTML5 Handbuch wird online als »OpenBook« zum kostenlos Lesen angeboten. Alternativ kannst du es aber als broschierte Version bestellen. Sei es direkt auf deren/dessen Website, über Amazon oder einen Buchhandel vor Ort.

LG medmonk

Woher ich das weiß:Berufserfahrung – UI/UX Designer, Full-Stack Developer

In meinen Augen nicht wirklich.

Sie sind eine Beschreibende Sprache. Über HTML oder CSS wird das "Design" einer Webseite "beschrieben"

Eine Programmiersprache unterscheided sich (zumindest meiner Meinung nach) darin, dass sie Logische Funktionen durchführt und kein GUI-Design.

Hier ist der Wikipedia-Link zu der Art der Sprache: https://de.wikipedia.org/wiki/Auszeichnungssprache


medmonk  17.03.2018, 23:04
Über HTML oder CSS wird das "Design" einer Webseite "beschrieben"

HTML wird lediglich zur strukturierten Darstellung von Text und anderem multimedialem Content (Bilder, Grafiken, Videos und/oder Audio) verwendet. Die eigentliche Gestaltung hingegen mit CSS (bedingt auch mit JS) realisiert wird.

Im Gegensatz zu HTML werden in CSS (anfangs CHSS [Cascading HTML Style Sheet]) vererbbare Regeln definiert, mit denen angesprochene Selektoren in ihrem Aussehen und (bedingt) Verhalten gestaltet werden.

  • Aussehen = Typografie, Farben, Hintergründe u.d.G.
  • Verhalten = Floats, Position etc. (Stichwort: Box- und Flexbox Model, CSS Grid)
Eine Programmiersprache unterscheided sich (zumindest meiner Meinung nach) darin, dass sie Logische Funktionen durchführt und kein GUI-Design.

Vereinfacht herunter gebrochen kann man es so stehen lassen. Struktur, Funktion (Logik) und Gestaltung des GUI voneinander getrennt. Wobei die Grenzen und Bereiche sich je nach Sprache verschieben (können).

Ohne groß Auszuholen es ja schon etwas amüsant ist, das Themes für Linux Distributionen mit simplem CSS geschrieben werden. Einfacher geht's eigentlich nicht mehr und trotzdem so manche Spielereien zulässt. ;)

LG medmonk

0
elektron110  17.03.2018, 01:53

Auch eine Programmiersprache kann sich um das GUI Design kümmern. Beispiel Java + Swing oder Delphi oder Visual c++ oder C#. Alles Programmiersprachen mit denen man auch GUIs gestalten, oder?

0
elektron110  17.03.2018, 11:25
@Djammer

Bei Java +JavaFX ist es jedenfalls (F)XML und ein spezielles CSS um die GUI zu gestalten. Java allein ohne Swing oder JavaFX kann glaube ich gar keine GUIs. Bei C++ weiß ich es auch nicht. Bei Delphi ist es auch ein spezielles Format das die Erweiterung DFM hat das könnte Delphi Form Markup Language heissen, keine Ahnung.

0

Nein, sondern eine Hypertext-Auszeichnungssprache.

https://de.wikipedia.org/wiki/Hypertext_Markup_Language

https://de.wikipedia.org/wiki/Cascading_Style_Sheets

War sehr schwer zu finden!


Trewh200  17.03.2018, 14:01

oder tätowieren

0
Kieselsaeure  16.03.2018, 21:50

Puh, da hast du aber tief in den Handbüchern gegraben :O ich speicher mir gleich mal die Links ab, so dass ich sie nicht verliere!

0