Sto riprogettando un sito e le diverse sezioni (intestazione, immagine banner, principale, ecc.) Hanno uno sfondo che si estende fino in fondo, tuttavia il contenuto è contenuto in una certa larghezza e quella casella è centrata.Un modo migliore per spostare il testo sopra un'immagine con diverse larghezze del contenitore
Tuttavia, nel disegno la "immagine banner" (che è un'immagine sotto l'intestazione ma sopra il contenuto principale) si estenderà oltre la larghezza del resto del contenuto. All'inizio questo è stato facile fino a quando non è emersa la necessità di avere del testo sopra l'immagine del banner e quel testo avrebbe dovuto essere allineato con il resto del testo.
Non riesco a utilizzare l'immagine di sfondo CSS perché su alcune pagine l'area dell'immagine del banner sarà un dispositivo di scorrimento, che richiede tag.
ho una soluzione di lavoro, ma sembra goffo e speravo di trovare un metodo migliore: http://jsfiddle.net/PkStg/10/
HTML:
<div class="header">
<div class="content-wrapper">
header text
</div>
</div>
<div class="banner">
<div class="content-wrapper">
<div class="banner-text-outer">
<div class="banner-text-inner">
<h2>banner text header</h2>
<p>banner text paragraph</p>
</div>
</div>
</div>
<div class="banner-image-wrapper">
<img src="http://www.brokenbowlakeguide.com/rainbow-trout-1.jpg" />
</div>
</div>
<div class="main-content">
<div class="content-wrapper">
main content text
</div>
</div>
CSS:
.header, .banner, .main-content { width: 100%; }
.header { background: red;}
.banner { background: green; }
.main-content { background: yellow; }
.content-wrapper {
margin: 0 auto;
max-width: 300px;
}
.banner-text-outer {
position: relative;
}
.banner-text-inner {
position: absolute;
top: 10px;
}
.banner-image-wrapper {
margin: 0 auto;
max-width: 400px;
min-width: 300px;
font-size: 0;
}
.banner-image-wrapper img {
width: 100%;
}
Accorciare la tua domanda vi recuperare alcune risposte –
Suppongo che il secondo '.banner -text-outer' dovrebbe essere '.ba nner-text-inner'? – Justin
Non vedo l'uso di '.banner-text-outer' e' .banner-text-inner'. Puoi rimuovere '.banner-text-outer' e usare padding per allineare il testo all'interno (o margine sui tag' h2' e 'p'). Altro che penso che il codice sia pulito. –