"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

CSS Alle Font-Einträge resizen?

Obermotz 05.02.2013 - 09:17 3128 9
Posts

Obermotz

Fünfzylindernazi
Avatar
Registered: Nov 2002
Location: OÖ/RI
Posts: 5262
Hiho!

Ich hab hier die zweifelhafte Ehre dass ich bei einem fremd-CSS (ellenlang) die Schriftgrößen anpassen muss. Nun sind diese größen fast ausschließlich absolut angegeben. Aber doch gemischt mit "em" und ein paar relativen Größen. Gibts einen common weg, um diese alle auf relativ umzuschreiben (Prio 2 :D) und um einen Wert x zu vergrößern (Prio 1)?

Ich bin schon am überlegen ob ich mir ein Skript dafür schreib :bash:

tia
charles

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4451
IMHO gibts keinen "common weg". Vorsichtig, mit Hausverstand, und nebenbei testend, umschreiben.

Wenns lang ist und aufräumen Sinn macht, da es mich noch länger beschäftigen würde, würde ich es vermutlich mit SASS aufräumen.

Wenns nur ein One-Shot-Ding ist, einfach nur durchgehen ...

Longbow

Here to stay
Avatar
Registered: Feb 2003
Location: Homeoffice
Posts: 5273
sollte font befehle für größere entitäten nicht eh kleinere div anweisungen überschreiben? das löst halt noch nicht das em problem aber immerhin

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25419
em bzw. % und px mischen ist nie gut. Das Problem wirst du in jedem Fall beheben müssen, um alle Fonts gleichzeitig resizen zu können. Nachdem die Umwandlung von px auf em nicht immer sinnvoll ist, musst du dafür mal die richtige Entscheidung treffen. Zum Beispiel bringt es nichts, wenn das CSS innerhalb eines Frameworks mit Template-Engine verwendet wird und der übergeordnete Node daher unbekannt bzw. unterschiedlich sein kann. Dann bekommst du nämlich für ein und dasselbe Objekt unterschiedliche Schriftgrößen. Selten ein gewollter Nebeneffekt. Wenn es eine statische Seite ist und es sich auszahlt, es korrekt zu machen, dann wäre die Umwandling in em brauchbar. Denn dann kannst du die komplette Seite durch eine einzige Angabe im zB body-Tag verändern.

Longbow

Here to stay
Avatar
Registered: Feb 2003
Location: Homeoffice
Posts: 5273
Zitat von mat
em bzw. % und px mischen ist nie gut. Das Problem wirst du in jedem Fall beheben müssen, um alle Fonts gleichzeitig resizen zu können. Nachdem die Umwandlung von px auf em nicht immer sinnvoll ist, musst du dafür mal die richtige Entscheidung treffen. Zum Beispiel bringt es nichts, wenn das CSS innerhalb eines Frameworks mit Template-Engine verwendet wird und der übergeordnete Node daher unbekannt bzw. unterschiedlich sein kann. Dann bekommst du nämlich für ein und dasselbe Objekt unterschiedliche Schriftgrößen. Selten ein gewollter Nebeneffekt. Wenn es eine statische Seite ist und es sich auszahlt, es korrekt zu machen, dann wäre die Umwandling in em brauchbar. Denn dann kannst du die komplette Seite durch eine einzige Angabe im zB body-Tag verändern.
wieso schreibst du quasi das gleiche wie ich, nur bei mir klingts nach bauer :D

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25419
Zitat von Longbow
wieso schreibst du quasi das gleiche wie ich, nur bei mir klingts nach bauer :D
Ich hab deinen Beitrag ehrlich gesagt nicht verstanden. :D

Nico

former person of interest
Registered: Sep 2006
Location: -
Posts: 4082
er meinte wohl das eine font-definition für body alle style-definitionen in divs überschreibt ;)

Paxi

Overclocking Team Member
Avatar
Registered: Oct 2009
Location: Wien
Posts: 388
Habs zufällig gerade gelesen, wurde eh schon alles gesagt, du kannst mal das versuchen, könnte hinhaun:
body { font-size : medium !important; }
Ich habe in Webprojekten em bislang nur für Fonts verwendet und sonst alles in px angegeben. In einem aktuellen Projekt arbeite ich mit dem Blueprint.css Framework (http://www.blueprintcss.org/), da wird soweit ich das bislang gesehen habe nur em verwendet.

@mat:
Zitat von mat
em bzw. % und px mischen ist nie gut. ....
Allgemein nicht oder nur in Bezug auf die Fonts?
Weil ich hab öfters schon gesehen, dass für Fonts em verwendet wird und für divs etc Pixel.

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25419
Zitat von Paxi
Habs zufällig gerade gelesen, wurde eh schon alles gesagt, du kannst mal das versuchen, könnte hinhaun:
body { font-size : medium !important; }
Genau darum geht es hier ja. Das funktioniert nur, wenn alle Font-Größen relativ gesetzt wurden. Sobald eine Pixeleinstellung dabei ist, macht diese Angabe gar nichts. Das "!important" ist übrigens nur dafür da, um eine weitere Überschreibung der Angabe durch CSS zu vermeiden.

Zitat
Allgemein nicht oder nur in Bezug auf die Fonts?
Weil ich hab öfters schon gesehen, dass für Fonts em verwendet wird und für divs etc Pixel.
Kommt darauf an, wie flexibel bzw. wartbar du deine Seite gestalten willst.

Anno dazumal war es für einen korrekten Browser-Zoom notwendig, dass sowohl Font-Größen, als auch Container-Dimensionen relativ angegeben wurden. Ansonsten sprengt die vergrößerte em- oder %-Font einfach das Layout. Heutzutage ist das nicht mehr so wichtig, weil alle aktuellen Browser mittlerweile das Zoomen so implementieren, dass auch Pixelwerte problemlos vergrößert werden. Insofern bringt das jetzt keinen Vorteil mehr.

In Wahrheit musst du diese Entscheidung also für dich und dein Projekt treffen, je nachdem ob du diese Flexibilität benötigst bzw. sie überhaupt möglich oder sinnvoll ist. In der Praxis wirst du so oft wie möglich bei Containern eine prozentuelle Angabe verwenden, aber ganz ohne Pixel (oder em) kommt man einfach bei einem komplexeren Layout nicht aus. Fonts hingegen sollten entweder in em oder px angegeben. Da darf man niemals mischen, denn sonst hast du denselben Salat wie Obermotz (Threadstarter).

Paxi

Overclocking Team Member
Avatar
Registered: Oct 2009
Location: Wien
Posts: 388
Okay, danke dir für die ausführliche Antwort :)
Das important nicht mehr tut als Überschreibungen durch CSS zu vermeiden wusste ich, das war auch meine Intention, dass es womöglich etwas bringen kann, damit eben font-size immer auf medium ist und weiters nicht mehr überschrieben werden kann. Aber es war mir nicht bewusst, dass es, sobald eine Pixeleinstellung einmal gesetzt wurde, hinfällig ist die font-size auf medium zu setzen.
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz