Gunnar Bittersmann: Maximalbreite mit eingerechnetem Padding etc. angeben

Beitrag lesen

@@VerteX:

nuqneH

Mit austricksen meinte ich nicht den o. g. mathematischen "Trick", sondern einen CSS-Hack

Ah, du willst nicht wissen, welchen Wert du zuweisen musst, sondern wie du 'max-width: 42px' fïr IE < 7 angibst?

im Sinne von Dustin Diaz' altbekanntem max-/min-height Hack für den IE6 (siehe hier).

(1) Das ist nicht im Sinne, sondern eher unsinnig.

Man sollte mit '!important' überlegt umgehen, sonst gibt es ungewollte Nebeneffekte.

In dem Falle ist eine Extra-Regel für IE < 7 angebracht:

selector { min-height: 500px }  
* html selector { height: 500px }

(2) Dort steht nichts von 'max-height'.

Gib für IE < 7 doch eine feste Breite. Dass die Darstellung in Steinzeitbrowsern nicht ganz so chic ist wie in neuzeitlichen, wen stört’s?

Wenn’s denn noch unbedingt sein muss, dann gehst du das mit JavaScript (als CSS-Expression) an: shrink-to-fit auslösen, berechnete Breite auslesen, mit maximal gewünschtem Wert vergleichen:

* html div  
{  
    float: left;  
    width: expression( [code lang=javascript](new Function('elem', 'elem.style.width = (Math.min(42, parseInt(elem.currentStyle.width)) + "px";'))(this)
~~~ );  
} [/code]  
  
Qapla'  
  
PS: [42](http://de.wikipedia.org/wiki/42_%28Antwort%29) ist ein [metasyntaktischer Wert](http://de.wikipedia.org/wiki/Metasyntaktische_Variable).

-- 
Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.  
(Mark Twain)