2016-03-20 8 views
0

Ich habe 3 Div-Tag, dass ich auf der linken Seite ausgerichtet und schweben links. Das Problem ist oben gibt es einen anderen Inhalt von width: 80rem; und ich möchte sie irgendwie zentrieren. Ich habe so viele Kombinationen ausprobiert, aber ich bin nicht in der Lage, das erste Bild auf das Objekt oben ausgerichtet zu starten.Verschieben div Tag nach rechts durch CSS

CSS

.beachcontent{ 
background-color: #FAFCE8; 
margin: auto; 
margin-bottom: 5px; 
border: 0.1rem solid black; 
padding: 0.2rem; 
width: 26.6rem; 
text-align: center; 
margin-left: 2.5px; 
margin-right: 2.5px; 
float: left; 
} 

HTML

<div class="beachcontent"> <!--starting div beachcontent--> 
<h4>Sardinia</h4> 
<a href="sardinia.html"><img src="images/sardinia.jpg" width="330" height="220" alt="Sardinia"></a> 
</div>      <!--ending div beachcontent--> 
<div class="beachcontent"> <!--starting div beachcontent--> 
<h4>Sicily</h4> 
<a href="sicily.html"><img src="images/sicily.jpg" width="330" height="220" alt="Sicily"></a> 
</div>      <!--ending div beachcontent--> 
<div class="beachcontent"> <!--starting div beachcontent--> 
<h4>Elba</h4> 
<a href="elba.html"><img src="images/elba.jpg" width="330" height="220" alt="Elba"></a> 
</div>      <!--ending div beachcontent--> 
</main> 
<!--several br lines to display hr below beachcontent divs--> 
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> 
<!--TO BE FIXED IF POSSIBLE--> 

ein weiteres kleines Problem ist, dass ich mehr <br> Linien verwenden <hr> unter beachcontent divs angezeigt werden, die nicht wirklich elegant ist. Gibt es einen besseren Weg, das zu beheben? Vielen Dank im Voraus.

enter image description here

+0

Warum haben Sie 'margin: auto' aber dann haben Sie die linken, rechten und unteren Ränder gesetzt? – Sam

+0

Da margin: auto sollte es zentrieren. Links rechts und unten sind die Ränder für etwas Freiraum. Sorry für diese Fehler, aber ich bin ein Anfänger. – JohnSnow

+0

So funktioniert das nicht. 'margin: auto' setzt die Ränder für links oben und unten auf automatisch. Sie setzen zuerst alle auf auto, dann überschreiben Sie links, rechts und unten. Der einzige Rand, der immer noch auf auto eingestellt ist, ist top. – Sam

Antwort

1

Ich denke, dass ich eine Lösung für Ihr Problem gefunden. Ich habe alle Divs in einem anderen Div gruppiert und eine Breite von 82rem und einen Auto Margin angegeben. Sie müssen die Breite an Ihr Design anpassen. den Code Versuchen Sie unter:

.beachcontent{ 
 
background-color: #FAFCE8; 
 
margin-bottom: 5px; 
 
border: 0.1rem solid black; 
 
padding: 0.2rem; 
 
width: 26.6rem; 
 
text-align: center; 
 
display:inline-block; 
 
} 
 
#middle{ 
 
    width: 82rem; 
 
    margin:auto; 
 
}
<div id="middle"> 
 
<div class="beachcontent"> <!--starting div beachcontent--> 
 
<h4>Sardinia</h4> 
 
<a href="sardinia.html"><img src="images/sardinia.jpg" width="330" height="220" alt="Sardinia"></a> 
 
</div>      <!--ending div beachcontent--> 
 
<div class="beachcontent"> <!--starting div beachcontent--> 
 
<h4>Sicily</h4> 
 
<a href="sicily.html"><img src="images/sicily.jpg" width="330" height="220" alt="Sicily"></a> 
 
</div>      <!--ending div beachcontent--> 
 
<div class="beachcontent"> <!--starting div beachcontent--> 
 
<h4>Elba</h4> 
 
<a href="elba.html"><img src="images/elba.jpg" width="330" height="220" alt="Elba"></a> 
 
</div><!--ending div beachcontent--> 
 
</div> 
 
</main> 
 
<!--several br lines to display hr below beachcontent divs--> 
 
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> 
 
<!--TO BE FIXED IF POSSIBLE-->

Können Sie bitte das Problem mit dem Bruchlinie Tag klären? Hoffe, das hilft

+0

Danke, es funktioniert !!! Kannst du mir vielleicht helfen zu verstehen, warum genau 82rem? Danke noch einmal!! – JohnSnow

+0

82 rem ist ein wenig mehr als die Summe der 3 Inline divs und das wird sie inline halten und ihnen eine automatische Marge geben –