Sono in grado di utilizzare z-index per inserire vari elementi HTML l'uno sull'altro in qualsiasi ordine mi piaccia, tranne quando uno degli elementi in un SVG in linea. Ad esempio, dato il codice HTMLCome posizionare elementi HTML su inline SVG
<div>
<p>Text before SVG. I'm some boring text. Such incredibly boring text. Who would possibly want to read such boring text?</p>
<svg version="1.1" baseProfile="full" width="200" height="200" xmlns="http://www.w3.org/2000/svg">
<circle cx="75" cy="40" r="20" fill="red" />
</svg>
</div>
<div>
<svg version="1.1" baseProfile="full" width="200" height="200" xmlns="http://www.w3.org/2000/svg">
<circle cx="75" cy="75" r="20" fill="red" />
</svg>
<p>SVG before text. I'm some boring text. Such incredibly boring text. Who would possibly want to read such boring text?</p>
</div>
e il CSS corrispondente
p {
width: 200px;
z-index:10;
}
div {
position: relative;
}
svg {
position: absolute;
left: 0;
top: 0;
z-index: 1;
}
non importa quanto ordino due o regolare la z-index, lo SVG in linea rende in cima al testo. Come posso ottenere SVG dietro al testo?
L'esempio precedente è disponibile allo https://jsfiddle.net/o0n10j78/1/.
Se è rilevante, nella mia applicazione effettiva sto generando quasi tutta la struttura del documento in Javascript con l'assistenza di jQuery, incluso l'SVG inline e il blocco HTML che desidero avere di fronte.
Provare a impostare lo z-index dello svg su -1 – Hoshts
Funziona, grazie! Ora ... perché funziona? Se metti il tuo commento in una risposta, lo invierò in precedenza e, in mancanza di una risposta migliore, lo accetterò tra qualche giorno. Tuttavia, mi piacerebbe accettare una risposta che mi dice _why_ si comporta in questo modo così posso migliorare il mio modello mentale della situazione. Sono particolarmente in perdita per il motivo per cui funziona bene per fratello, ad esempio, p. –
Il problema non è in realtà lo svg qui, ma il tag p. Z-index non è applicato sugli elementi in quanto non ha una posizione impostata. Un'alternativa per impostare -1 sulla svg, impostare la posizione: relativa sulla P-tag. Non ho notato che la posizione era mancante su quello. – Hoshts