2017-01-13 3 views
3

Mein Endziel ist es, auf jedem Bildschirm ein Bild derselben Größe anzuzeigen (ja, ich brauche das wirklich für etwas).Wie setzt man physikalische Dimensionen (wie tatsächliche Zoll) für Elemente?

Ich begann zu lesen, wie man die Bildschirmgröße des Benutzers here bekommen - und die Antwort scheint zu sein, dass es unmöglich ist (ohne eine API aufzurufen, die versucht, das tatsächliche Gerät basierend auf einigen Parametern zu erraten).

Ich erinnerte mich dann, dass css physische Dimension Einheiten für die Dimensionierung Elemente hat und entschied sich, auf meinem Bildschirm zu testen. I gesetzt Abmessungen wie folgt:

<div style = "background-color:black; height: 5in; width: 3in;"></div> 

und legen dann eine physikalische 3 "x 5" (7,6 cm x 12,7 cm), Flashkarte gegen den Bildschirm.

Es war deutlich in der Größe.

Fun Note - Einstellung Größe in mm war lächerlich aus - ich erwartete, die gleichen Ergebnisse wie mit Zoll zu erhalten.

Mit dem gesagt, gibt es eine Möglichkeit zu tun, was ich brauche?

Antwort

2

In CSS entspricht ein Zoll nicht einem physischen Zoll. Es entspricht 96px.

5.2. Absolute lengths: the cm, mm, q, in, pt, pc, px units

enter image description here

Die absoluten Längeneinheiten sind festgelegt in Bezug zueinander und bis zu einem gewissen physikalischen Mess verankert:

können Sie diesen Abschnitt der Spezifikation helfen.

Wenn die Ankereinheit die Pixeleinheit ist, stimmen die physikalischen Einheiten möglicherweise nicht mit ihren physikalischen Messungen überein.

Alternativ, wenn die Ankereinheit eine physikalische Einheit ist, die Pixeleinheit möglicherweise nicht

+1

Dank einer ganzen Reihe von Gerätepixeln abzubilden, das hilft. – VSO

+0

@ VSO Was? Wie? Dies sagt mir nichts darüber, wie ich tatsächlich ein Element erstellen könnte, das (z. B.) genau 1 Zoll breit auf jedem Gerät ist, auf dem es angezeigt wird! – Michael

+0

@Michael Lange Geschichte kurz - es ist unmöglich, physische Dimensionen zu bekommen. Es gibt Bibliotheken, die Ihren Bildschirm/Ihr Gerät erkennen und versuchen, sich daran anzupassen, wenn Sie es WIRKLICH brauchen, aber sie sind alle ein Schmerz. – VSO