diff --git a/index.html b/index.html
index 6a1b8c3712a6f60caaab0fe58af729c5d5f77c4c..cceb61769a109b65b3f8009c83e8fe5b3a268ded 100644
--- a/index.html
+++ b/index.html
@@ -1,8 +1,13 @@
+<!DOCTYPE html>
 <html>
 	<head>
 		<title>QR</title>
 	</head>
 	<style>
+		#qrcode {
+			height: 100vh;
+		}
+
 		#qrcode > * {
 			padding: 1rem 5%;
 			max-width:90%;
@@ -20,40 +25,41 @@
 	<body>
 		<input id="text" name="text" placeholder="QR code content" style="width: 100%;">
 		<div id="qrcode"></div>
-	</body>
-	<script type="text/javascript" src="js/jquery.min.js"></script>
-	<script type="text/javascript" src="js/qrcode.min.js"></script>
-
-	<script type="text/javascript">
-		var qrcode;
-		var elText;
-		function generateQR() {
-			url = elText.value;
-			if (!qrcode) {
-				qrcode = new QRCode(document.getElementById("qrcode"), url);
-			} else {
-				qrcode.clear();
-				qrcode.makeCode(url);
+
+		<script type="text/javascript" src="js/jquery.min.js"></script>
+		<script type="text/javascript" src="js/qrcode.min.js"></script>
+
+		<script type="text/javascript">
+			var qrcode;
+			var elText;
+			function generateQR() {
+				url = elText.value;
+				if (!qrcode) {
+					qrcode = new QRCode(document.getElementById("qrcode"), url);
+				} else {
+					qrcode.clear();
+					qrcode.makeCode(url);
+				}
 			}
-		}
 
-		$( document ).ready(function() {
-			window.addEventListener('hashchange', function() {
+			$( document ).ready(function() {
+				window.addEventListener('hashchange', function() {
+					elText.value = decodeURIComponent(location.hash.substring(1));
+					generateQR();
+				});
+				elText = document.getElementById("text");
+				elText.oninput = function () {
+					window.location.hash = encodeURIComponent(elText.value);
+				};
 				elText.value = decodeURIComponent(location.hash.substring(1));
+
 				generateQR();
 			});
-			elText = document.getElementById("text");
-			elText.oninput = function () {
-				window.location.hash = encodeURIComponent(elText.value);
-			};
-			elText.value = decodeURIComponent(location.hash.substring(1));
 
-			generateQR();
-		});
+		</script>
 
-	</script>
-
-	<footer>
-		<span><a href="https://legal.cccv.de/">Impressum und Datenschutzerklärung</a></span>
-	</footer>
+		<footer>
+			<span><a href="https://legal.cccv.de/">Impressum und Datenschutzerklärung</a></span>
+		</footer>
+	</body>
 </html>