2012-04-09 10 views

Antwort

2

Ich würde dieses ein wenig versuchen Einstellung :

.flexslider .slides img { 
    float: left; /* leave other properties */ 
} 

.flex-caption { 
    width: 16%; /* leave others - width is 16% because you have a 2% padding around all sides (16 width + 2 left + 2 right */) 
} 
+0

Ich mache nur einen kurzen WUHU! http://jsfiddle.net/bmBnF/6/ scheint mit dem Float zu arbeiten: links, und belassen die Breite auf 20% :) –

5

Das Problem ist, dass in CSS width bedeutet eigentlich "Inhaltsbreite". Polsterungen und Ränder zählen nicht, daher müssen Sie Ihre Breiten anpassen (verringern), um sie zu kompensieren.

Siehe updated jsfiddle. Beachten Sie, dass ich die 20% Breite zu 16% (die 2% Ränder auf jeder Seite kompensiert) geändert und 80% zu 79% geändert haben, um Rundungsprobleme zu berücksichtigen.

Hinweis: In neueren Browsern können Sie die Verwendung des "traditionellen" (Microsoft) Box-Modells für bestimmte Elemente erzwingen, dann würde width die volle Breite bedeuten, einschließlich Padding und Rahmen. Siehe Cthulhus Antwort für ein Beispiel.

+0

Aber ich habe keine Polsterung oder Ränder irgendwo? Und ich benutze sogar CSS-Reset, um das zu beseitigen :) –

+0

Sie haben 'padding: 2%' auf '.flex-caption'. – bfavaretto

+0

kann nichts auf JSFiddle für irgendwelche von diesen sehen :-( – the0ther

2

Fügen Sie einfach -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; .flex-Bildunterschrift:

http://jsfiddle.net/Cthulhu/bmBnF/2/

Dies ist die Box-Modell Bug ist, kann man es auf Wikipedia lesen: http://en.wikipedia.org/wiki/Internet_Explorer_box_model_bug

+0

Das tut noch nicht Mach den Trick nicht ... Die Titelbox schwebt immer noch unter dem Bild :) –

+0

Ich bin mir nicht sicher, was du meinst. Ich habe ein Update für Ihre eigene jsfiddle zur Verfügung gestellt, das gut mit der Lösung funktioniert, die ich Ihnen gab. Können Sie mehr Details senden? – Cthulhu