Warum gibt es eine Standardmarge auf der Element? [closed]

Lesezeit: 4 Minuten

Benutzer-Avatar
RLH

Während des größten Teils meiner Entwicklungskarriere musste ich mich nur mit der Entwicklung von webbasierten UI-Front-Ends beschäftigen. Eine Sache, die mich immer gestört hat, ist die ständige Notwendigkeit, browserbasierte Styling-Annahmen zurückzusetzen, die ich oft vergessen habe, bis diese Standardeinstellungen das Layout meiner Seiten beeinflussten.

Die größte Annahme, die die meisten Browser machen, ist, dass HTML <body> -Element sollte einen Rand haben, der fast immer 8 Pixel beträgt.

Was war die Entwurfsentscheidung für diese ausgefallene Marge?

Tatsächlich ist dieser Spielraum so unerwünscht, dass es im Wesentlichen gängige Praxis ist, diese Art von Stil in eine .css-Datei aufzunehmen, die jeder Seite einer Website beigefügt ist:

html, body
{
    margin: 0px; padding: 0px
}

IMHO würde die Logik diktieren, dass die meisten Entwickler eine vollständige, leere Tafel wollen, mit der sie nach eigenem Ermessen arbeiten und formatieren können. Da der Browser standardmäßig einen Rand um das body-Element vorgibt, muss der Designer auf die Abstände achten und Code hinzufügen, um das korrekte Layout für seine inneren Elemente zu berechnen, wenn er das Layout nicht zurücksetzt.

Aus welchem ​​Grund haben sich die ursprünglichen Entwickler von HTML-Browsern oder die ursprüngliche HTML-Spezifikation entschieden, diesen Standardrand auf alle body-Elemente zu werfen?

  • Meine Vermutung ist, dass sie wollten, dass ungestylte Seiten nicht völlig hässlich aussehen, aber das ist nur eine Vermutung.

    – Kevinji

    31. Dezember 2015 um 18:45 Uhr

  • Weil Buchstaben, die direkt am Fensterrand stehen, schwer zu lesen sind?

    – John Hascall

    31. Dezember 2015 um 18:45 Uhr

  • Es ist nicht nur der Körper, die Überschrift, die Absätze, die Menüs, alle haben ein gewisses Standard-Styling … warum … das ist eine Frage für das W3C … nicht für Stack Overflow.

    – Paulie_D

    31. Dezember 2015 um 18:53 Uhr

  • w3.org/TR/html5/rendering.html

    Benutzer4431269

    31. Dezember 2015 um 19:07 Uhr

  • Ich habe dafür gestimmt, dies als POB zu schließen, weil “gibt es welche gut Grund X Person hat Y getan“ ist letztendlich eine rechthaberische Frage, je nachdem, was der Betrachter für „gut“ hält. Es gibt definitiv Gründe dafüraber selbst die Antwort auf diese Gründe konnten nur die Anbieter selbst geben … und sie beantworten nicht häufig Stack Overflow-Fragen.

    – TylerH

    1. Januar 2016 um 7:12 Uhr

Benutzer-Avatar
LOTUSMEN

Sprachen sind ursprünglich so gebaut, dass sie unabhängig voneinander funktionieren. Damit Sie diese bestimmte Sprache technisch nur für das verwenden können, wofür sie bestimmt ist. Im Fall von HTML soll es Ihnen nur ermöglichen, etwas in einem Browser anzuzeigen. CSS hingegen (und wie Sie sicherlich wissen) soll den gesamten Verschönerungsprozess erstellen. In Anbetracht dessen sollte jeder in der Lage sein, ein HTML-Dokument ganz ohne CSS zu schreiben, und Browser sollten es in der am besten lesbaren Form anzeigen. Damit dies so konsistent wie möglich geschieht, haben Browser sogenannte “gesunde Standardeinstellungen”. Diese Standardeinstellungen decken den Rand und die Auffüllung des Körpers, einige Schriftarten, die am besten lesbare Schriftgröße usw. ab. Und sie überlassen es Ihnen, bei Bedarf mit CSS zu überschreiben.

Ohne den Rand und die Polsterung des Körpers würde alles vollständig in das Browserfenster gespült werden. Das ist nicht die beste Vorgehensweise, wenn Sie ein Dokument lesen.

BEARBEITEN

Die folgenden Links zeigen die CSS-Standardeinstellungen von Firefox und Webkit. Dies hilft Ihnen bei der Fehlerbehebung bei den Standardeinstellungen, von denen Sie keine Ahnung haben, woher sie stammen oder warum sie existieren.

Webkit

Feuerfuchs

  • Das macht Sinn. Haben Sie Referenzmaterial, das diese Konzepte entweder weiter erörtert oder Links zu alten BBS-Diskussionen enthält?

    – RLH

    31. Dezember 2015 um 19:05 Uhr

  • Ich suche danach, während wir sprechen. Ich erinnere mich, dass ich das vor einiger Zeit gelesen habe. Gib mir eine Minute\

    – LOTUSMEN

    31. Dezember 2015 um 19:05 Uhr

  • @RLH – leider wurden diese Entscheidungen zu einer Zeit getroffen, als w3c-Diskussionen privat waren. nicht über die öffentlichen Kanäle, die wir heute haben. Aber das ist richtig – es wäre tatsächlich ein Kinderspiel gewesen – die Abwärtskompatibilität mit bestehenden Webseiten war schon immer ein wichtiges Ziel, und die Standardeinstellungen waren dafür notwendig, als CSS hinzugefügt wurde.

    – Alohci

    31. Dezember 2015 um 19:16 Uhr


Das liegt wahrscheinlich daran, dass die meisten Entwickler direkt in Baustellen und Apps gesprungen sind, ohne die zusätzlichen Schritte zu unternehmen, um sicherzustellen, dass der richtige Abstand um die Kanten des Körpers herum vorhanden ist, wodurch der Text direkt an den Rändern des Bildschirms verläuft.

Erfahrene Entwickler sollten die zusätzlichen Schritte unternehmen, um die Stile zurückzusetzen, wenn sie die volle Kontrolle haben wollen, aber ich denke, dass das automatische Styling das kleinere von zwei Übeln ist. Denken Sie an all die Leute da draußen, die einfache Websites mit GoDaddy oder anderen ähnlichen Hosting-Diensten erstellen.

1017430cookie-checkWarum gibt es eine Standardmarge auf der Element? [closed]

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy