2012-11-01 11 views
7

Kontext: Ich versuche, Inline-Bilder von Gleichungen (PNG-Dateien) nahtlos in eine Webseite einzufügen. Mir ist bewusst, dass dies bereits früher gemacht wurde, aber ich nutze dies als Lernprojekt. Ich bin also nicht an mathematischen Bibliotheken interessiert, sondern an der allgemeinen Antwort auf diese Frage.Bildgröße ändern auf aktuelle Texthöhe mit CSS

Ich möchte, dass die Bilder natürlich ihre Höhe zu einem bestimmten Prozentsatz der aktuellen Texthöhe mit einem CSS-Stil skalieren. Ich bin ein Neuling in Web-Design, aber es scheint, wie ich einen Stil gehört der Lage sein sollte, die wie etwas aussieht:

height: 80% * parent.text_height 

Ist dies möglich mit reinem CSS?

Antwort

8

Ems sind relativ Maßeinheiten, die von der Textgröße des Elternelements abhängig ist. Ein em ist ungefähr der Abstand zwischen Textzeilen. Daher könnten Sie versuchen:

height: .8em; 

aber bewusst sein, dass Inline-Elemente (wie ein plain old img-Tag) nicht Höhenangaben akzeptieren.

+0

Dies funktioniert perfekt, in der Tat ist es besser als Sie gesagt haben. Das Setzen einer Stiländerung in '' macht genau das, was ich denke (mit Chromium 20.0.1132.47). Ist das etwas, das nicht browserkompatibel ist? – Hooked

+0

Die Verwendung von ems sollte von Browsern sehr gut unterstützt werden. Browser sollen keine Höhenangaben für Elemente mit 'display: inline;' (wie 'span's oder' strong's) akzeptieren. Aber jedes Element kann in 'display: block;'; Es gibt jedoch andere Implikationen dafür. – KatieK