2014-06-26 19 views
6

Sto provando a visualizzare 2 elementi nei miei elementi; il nome class e una variabile creata da data-size. Separato con uno spazio bianco.Contenuti multipli: valori attr()

ho potuto ottenere questo lavoro facendo questo:

.element:before { 
    content: attr(class); 
} 

.element:after { 
    content: attr(data-size); 
} 

ma doesnt sembrare un modo giusto per farlo. Ho anche provato a fare questo:

.element:before { 
    content: attr(class data-size); 
} 

Ma che partecipavano non ha funzionato.

ingresso

HTML

<div class="element" data-size="20"></div> 

CSS

.element:before { 
    content: attr(class data-size); 
} 

uscita Ricercato

elemento 20

Demo here

+0

try 'attr (class)" "attr (data-size)' –

risposta

7

concatenare due o più valori di stringa in CSS, separate them with whitespace:

.element:before { 
    content: attr(class) ' ' attr(data-size); 
} 

Si noti che gli spazi tra le attr() funzioni e le virgolette non è la stessa come il spazio vuoto entro le virgolette. Quest'ultima è una stringa reale contenente un carattere di spazio, che separerà i due valori di attributo nell'output. Lo spazio bianco tra le tre parti è l'operatore che le unisce insieme.

+0

Grazie, accettando la tua risposta quando posso. Posso farlo tutte le volte che voglio e posso mettere altre cose qui? – Bas

+0

@Bas: Sì, puoi farlo con tutte le stringhe che vuoi. Puoi anche inserire qualsiasi altra stringa che desideri purché venga inserita tra virgolette, ad esempio 'content: attr (data-foo) 'abc';' – BoltClock

+0

ah okay, non lo so. È possibile inserire anche una nuova linea? – Bas