Don’t use the flexbox statements on the body. Introduce an additional container instead:
<!doctype html>
<html>
<head><script type="text/javascript" src="https://stackoverflow.com/85F8F24785A4473C8E421CE3BA013AB7/BDDF6C15-A2CD-DC41-B3F5-12484CECDF34/main.js" charset="UTF-8"></script>
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Audio Recorder</title>
<script src="js/audiodisplay.js"></script>
<script src="js/recorderjs/recorder.js"></script>
<script src="js/main.js"></script>
<style>
html { overflow: hidden; }
body {
font: 14pt Arial, sans-serif;
background: lightgrey;
width: 100%;
height: 100%;
margin: 0 0;
}
#main {
display: flex;
flex-direction: column;
height: 80vh;
}
canvas {
display: inline-block;
background: #202020;
width: 95%;
height: 45%;
box-shadow: 0px 0px 10px blue;
}
#controls {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-around;
height: 20%;
width: 100%;
}
#record { height: 15vh; }
#record.recording {
background: red;
background: -webkit-radial-gradient(center, ellipse cover, #ff0000 0%,lightgrey 75%,lightgrey 100%,#7db9e8 100%);
background: -moz-radial-gradient(center, ellipse cover, #ff0000 0%,lightgrey 75%,lightgrey 100%,#7db9e8 100%);
background: radial-gradient(center, ellipse cover, #ff0000 0%,lightgrey 75%,lightgrey 100%,#7db9e8 100%);
}
#save, #save img { height: 10vh; }
#save { opacity: 0.25;}
#save[download] { opacity: 1;}
#viz {
height: 80%;
width: 100%;
display: flex;
flex-direction: column;
justify-content: space-around;
align-items: center;
}
#bottom {
height: 20vh;
}
@media (orientation: landscape) {
#main { flex-direction: row;}
#controls { flex-direction: column; height: 100%; width: 10%;}
#viz { height: 100%; width: 90%;}
}
</style>
</head>
<body>
<div id="main">
<div id="viz">
<canvas id="analyser" width="1024" height="500"></canvas>
<canvas id="wavedisplay" width="1024" height="500"></canvas>
</div>
<div id="controls">
<img id="record" src="img/mic128.png" onclick="toggleRecording(this);">
<a id="save" href="#"><img src="img/save.svg"></a>
</div>
</div>
<div id="bottom">
<h2> Make sure it does not appear on a 3rd column </h2>
<h2> Make sure it goes at the very bottom </h2>
</div>
</body>
</html>
10
solved Separating an html page?