Frage

Was ist der definitiver Weg, um die CSS-Eigenschaft min-width in Internet Explorer 6 zu imitieren? Ist es besser, nicht zu versuchen?

War es hilfreich?

Lösung

foo { min-width: 100px }      // for everyone
* html foo { width: 100px }   // just for IE

(oder eine separate Sheet IE dient mit bedingten Kommentaren )

Andere Tipps

Sie können einen Ausdruck verwenden (wie von HBoss vorgeschlagen), aber wenn Sie über die Leistung besorgt sind, dann ist der beste Weg, dies zu tun, ist einen Shim innerhalb des Elements fügen Sie eine min-Breite anwenden möchten.

<div id="container">
  The "shim" div will hold the container div open to at least 500px!
  You should be able to put it anywhere in the container div.
  <div class="shim">&nbsp;</div>
</div>

#container .shim {
  width: 500px;
  height: 0;
  line-height: 0;
}

Dies erfordert ein wenig nicht-semantisches Markup, sondern ist eine wirklich Cross-Browser-Lösung und erfordert nicht den Aufwand einen Ausdruck verwendet wird.

diesem Artikel auf CSS Play, von Stu Nicholls, zeigt die unterschiedliche Methoden für min-width im IE zu erreichen, in allen Modi (Quirks, usw.) und sogar für IE / Mac.

Ich habe mit jeder Antwort getüftelt hier im letzten Monat gegeben. Und nach ( Min-Breite in MSIE 6 ), es mit Pretaul Methode spielen scheint die beste Alternative zu min-Breite zu sein. Keine Hacks oder irgendetwas, nur gerade nach oben konformer CSS-Code, der 30 Sekunden dauert zu implementieren.

Von googeln um, scheint Ausdrücke die beliebtesten zu sein. Für mich sowieso, ittended zufällig meinen Browser sperren (IE und FF).

Ich weiß nicht, ich hatte einen gewissen Erfolg mit:

    min-width: 193px;
    width:auto !important; 
    _width: 193px;  /* IE6 hack */

Eine Kombination von Dustin Diaz‘min-height schnell Hack & Wie ich in HTML oder CSS die absolute Mindestbreite einer Tabellenzelle

Sie Ihren CSS-Tag als _width. 500px oder was auch immer

Das funktioniert ziemlich gut ...

div.container {
    min-width: 760px; 
    width:expression(document.body.clientWidth < 760? "760px": "auto" ); 
}

Min-Höhe schnellen Hack funktioniert für mich (funktioniert auch für Breite)

Das Shim Beispiel ist für zwingt den Browser feine eine horizontale Bildlaufleiste angezeigt wird, wenn der Behälter auf eine bestimmte Größe bekommt, aber Sie werden feststellen, dass der Inhalt des Behälters wird noch geändert werden, wenn das Fenster kleiner wird. Ich stelle mir vor, dass dies nicht das Gesamtziel ist, wenn minimale Breite in IE 6 zu erreichen versuchen.

Unvollständige min-width Technik http://www.mediafire.com/imgbnc. php / 260264acec99b5aba3e77c1c4cdc54e94g.jpg

Darüber hinaus ist die Verwendung von Ausdrücken und anderen verrückten CSS-Hacks ist einfach keine gute Praxis. Sie sind unsicher und unrein. Diese Artikel die Einsprüche von CSS-Hacks erklärt und warum sollten sie vollständig vermieden werden.

Ich persönlich scaryjeff der Post zu sein ist der beste Rat für die Erreichung wahren min-width in IE6 und als erfahrenem CSS-Layout-Entwickler halte ich habe noch eine bessere Lösung zu finden, die auch für Probleme dieser Art ist.

  

Die Artikel auf CSS Wiedergabe rel="nofollow, von Stu Nicholls, zeigt die unterschiedlichen Methoden für min-width im IE zu erreichen, in allen Modi (Quirks, usw.) und sogar für IE / Mac.

Ich habe eine Antwort auf eine ähnliche Frage zur Verfügung gestellt, die die Verwendung dieser Technik Details korrekt min-Breite zu erreichen. Es kann hier eingesehen werden:

CSS: Zwei 50% Flüssigkeitssäulen nicht respektiert min Breite

Die Technik ist einfach, gültiges CSS, die in fast jeder Situation eingesetzt werden können. Angewandt auf das Shim obiges Beispiel führt dies zu, was ich für richtig min-width Funktionalität sein.

Correct min-width Technik http://www.mediafire.com/imgbnc. php / a67b2820bfbd6a5b588bea23c4c0462f4g.jpg

Einzeiliger Taste

button{
background-color:#069;
float:left;
min-width:200px;
width:auto !important;
width:200px;
white-space: nowrap}

bedingte Kommentare Verwenden Sie zu verweisen und MSIE 6 spezifischer Stylesheet, dann CSS erstellen, wie unten.

kompatibele Browser verwendet werden:

min-width: 660px;

Dann MSIE 6 wird verwendet werden:

width: expression((document.body.clientWidth < 659)? "660px" : "auto");
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top