Siehe HTML und CSS unten.Warum fügt das Hinzufügen von Inhalten zu einem div der Seite eine Bildlaufleiste hinzu, wenn die übergeordnete Größe konstant ist?
Wenn das h1-Tag unkommentiert ist, wird eine Bildlaufleiste zur Seite hinzugefügt, aber ich weiß nicht warum. Ich vermute, dass es daran liegt, dass die Karten position:fixed
haben, aber ich weiß nicht, wie man sie so aussehen lässt, außer position:fixed
.
Ich möchte die title
Div 20% des Bildschirms aufnehmen und die card-conveyor-belt
div, um 80% des Bildschirms, unabhängig von ihrem Inhalt aufzunehmen. Wie kann ich das tun?
HTML:
<body>
<div class="title">
<!--
<h1>
HELLO
</h1>-->
</div>
<div class="card-conveyor-belt">
<div class="card left"></div>
<div class="card center"></div>
<div class="card right"></div>
</div>
</body>
CSS
html,body{
height:100%;
margin:0;
padding:0;
background-color:#ccc;
}
.title{height: 20%;width: 100%;}
.card-conveyor-belt{
height: 80%;
width: 100%;
}
.card{
position:fixed;
width:80%;
height:80%;
background-color:white;
border-radius:5px;
}
.center{
left:10%;
}
.left{
left:-78%;
}
.right{
left:98%;
}
Here is the same code in a jsfiddle, wenn Sie möchten, um mit ihm laufen/interagieren.
Danke. Warum verursachen Margen eine Scrollbar, obwohl sie scheinbar im Titel div enthalten ist? – quantumbutterfly
Eine andere Möglichkeit, dieses Problem zu lösen, ist 'h1 {display: inline-block}' in dem Fall, dass Sie den Rand nicht "verlieren". –
Es kann aufgrund der Größe der h1 mit der div überlappend sein, Sie könnten auch versuchen, CSS Normalize zu verwenden, um störende html/css Glitches wie diese zu vermeiden. –