Ich versuche, die used value der Ränder eines Elements zu bestimmen. Mein Verständnis ist, dass dies über .getComputedStyle() zurückgegeben werden sollte. Es scheint jedoch, dass FireFox und Opera nicht die richtigen Werte zurückgeben, wenn margin: auto;
verwendet wird. Firefox gibt '0px'
und Opera kehrt '0px'
oder gelegentlich 'auto'
:Ermitteln der absoluten Breite der Ränder (Problem mit Rand: auto;)
Ich weiß, ich könnte den Inhalt Breite des Mutter berechnen und die Gesamtbreite des Kindes, und verwenden Sie diejenigen, die Ränder zu berechnen , aber ich bin auf der Suche in erster Linie auf den Fall, wenn die Eltern ein Flexbox ist:
Auch hier sind die Werte möglicherweise ‚Reverse Engineering‘ werden könnte, aber das wäre relativ kompliziert (BWS Wenn die Flexbox das Wrapping erlaubt hat, fragte ich mich, ob jemand andere Gedanken hatte.
Dies kann helfen: http://stackoverflow.com/questions/12718084/jquery-1-8-2-noncurrent-jquery-ui-outerwidth-and-outerheight-broken –
@Diodeus Ich muss etwas falsch verstehen, weil ich bin mir nicht sicher, wie das hilft? Ich wusste bereits von jQuerys '.outerWidth()', also habe ich einen Blick durch ihre Quelle geworfen, aber es stellt sich heraus, dass es in FF/Opera (zumindest in einer Flexbox) auch falsche Randwerte gibt. – BYossarian
Es gibt andere Möglichkeiten, den Rand zu finden - jquery hat einige mächtige Positionierungsfunktionen, mit denen Sie indirekt rechnen können. Flexbox ist immer noch ein relativ neues CSS-Konzept und der Support ist möglicherweise nicht so gut wie erwartet. Warum brauchen Sie die Ränder genau? – ProfileTwist