Hallo zusammen,
Ich wusste nicht, in welchem Bereich ich das am besten frage, da das vermutlich mit CSS und JavaScript machbar wäre, ich denke CSS ist vermutlich eleganter, damit kenne ich mich aber praktisch null aus.
ich versuche gerade ein Textfeld auf einem Bild zu platzieren, und es soll immer an genau der gleichen Stelle im Bild platziert sein, egal welche Auflösung am Monitor eingestellt ist. Das ist mein Code:
<!DOCTYPE html>
<html lang="de">
<head></head>
<body>
<div id="bild">
<input type="text" id="textfeld"></input>
</div>
<script>
var windowWidth = window.screen.width;
var windowHeight = window.screen.height;
var windowHeightProp = windowHeight/1080;
var windowWidthProp = windowWidth/1920;
document.getElementById("bild").style.width = 1000 * windowHeightProp +"px";
document.getElementById("bild").style.height = 500 * windowHeightProp +"px";
document.getElementById("bild").style.top = 100 * windowHeightProp +"px";
document.getElementById("bild").style.left = 100 * windowWidthProp +"px";
document.getElementById("textfeld").style.top = 200 * windowHeightProp +"px";
document.getElementById("textfeld").style.left = 500 * windowWidthProp +"px";
</script>
<style>
#bild {
background-image: url("download.jpg");
position:relative;
}
#textfeld {
position:relative;
-webkit-transform: rotate(-90deg); /* Chrome, Safari, Opera */
-ms-transform: rotate(-90deg); /* IE 9 */
}
</style>
</body>
</html>
Alles anzeigen
Wie man sieht lese ich mit JavaScript die Breite und Höhe des Bildschirms aus und setze ihn in ein Verhältnis zu einem von mir gewählten Standard (1920*1080). Dann wollte ich die Position des Bildes und des Textfeldes abhängig von diesem Verhältnis festlegen. Das funktioniert allerdings nicht, bei anderer Auflösung ist auch das Feld an einer anderen Stelle. Hat jemand eine Idee wo mein Fehler liegt, bzw wie man es anders machen könnte?
Danke