Attualmente ho un'immagine che si ripete su y, ma voglio che inizi a 20 px in basso da dove inizia il div ....CSS: posizione di sfondo con ripetizione?
come faccio?
Attualmente ho un'immagine che si ripete su y, ma voglio che inizi a 20 px in basso da dove inizia il div ....CSS: posizione di sfondo con ripetizione?
come faccio?
Forse dovresti usare :after
o :before
per questo, perché non è necessario aggiungere ulteriore markup nel tuo codice HTML. Come questo:
.container{
height:400px;
background:red;
position:relative;
width:400px;
}
.container:after{
content:"";
position:absolute;
top:20px;
left:0;
right:0;
bottom:0;
background:url(http://lorempixel.com/400/200) repeat-y;
}
Scegli questa http://jsfiddle.net/h6K9z/
Funziona in precedenza IE8 &. Per IE7 o IE6 è possibile aggiungere DIV
extra per questo.
Hai solo bisogno la proprietà background-position da impostare:
background-position: 0px 20px;
background-repeat: repeat-y;
posizione sfondo sposta il punto iniziale dello sfondo, ad es. 20px in giù nella pagina, ma non gli impedisce di ripetere * sopra * questo punto. – ajcw
.yourClass{
background: url(images/yourImage.png) repeat-y;
background-position: 0px 20px;
}
questo non funziona (testato con browser basati su webkit) posizione di sfondo non ha alcun effetto. o la ripetizione y va oltre la posizione iniziale. – NullVoxPopuli
Sto riscontrando lo stesso problema e @TheLindyHop è corretto, non ha alcun effetto in Webkit – codinghands
preferisco il metodo shorthand:
.yourClass {
background: url(../images/yourImage.png) repeat-y 0 20px;
}
Non credo semplicemente combinando background-position
e background-repeat
es repeat-y 0 20px
funzionerà. Supponendo che questo jsFiddle sample rappresenti il caso dell'OP, la soluzione dovrebbe rendere lo sfondo verde a partire da 20px (verticale); il "Ciao!" il testo non deve stare in cima allo sfondo verde.
La mia risposta è che questo non può essere fatto chiaramente dai CSS; nel senso, potresti voler cambiare la tua struttura HTML per raggiungere il tuo obiettivo. Tuttavia, sto iniziando un premio che spera che gli altri escano con risposte migliori.
Questo è fantastico; Funziona! Grazie, @sandeep. 'a destra: 0; fondo: 0; left: 0', è un modo per "allungare" un contenitore posizionato in modo assoluto per riempire il 100% di larghezza e il 100% di altezza (a partire da 20px, ovviamente)? – moey
Mentre controlli la tua risposta hai scoperto il fantastico servizio di lorempixel.com, grazie! – Trufa
destra: 0; fondo: 0; a sinistra: 0 è veramente riempitivo per container, testato ok in ie8. Funziona anche come bottom: 90px; Questo da solo valeva oro. – Johan