Estoy tratando de extender un old CSS trick a nuevas longitudes, teniendo en cuenta el siniestro futuro de the Oxford Comma. Me gusta la Oxford Comma. Quiero que mis listas en línea lo usen. Es decir,listas delimitadas por comas con CSS: ¡quiero una Oxford Comma!
Me gustaría que esta html
<ul id="taglist">
<li>apple</li>
<li>orange</li>
<li>banana</li>
</ul>
a aparecer como la siguiente:
apple, orange, & banana
Ahora, puedo conseguir que se muestran como
apple, orange & banana
usando este CSS:
#taglist {
display: inline;
list-style: none;
}
#taglist li {
display: inline;
}
#taglist li:after {
content: ", ";
}
#taglist li:last-child:after {
content: "";
}
#taglist li:nth-last-child(2):after {
content: " & ";
}
pero el problema , se ve, es que no podemos simplemente cambiar esta última afirmación a content: ", & "
porque las listas con sólo dos artículos se verá estúpida. Al igual que
I like to eat apples, & bananas
Así que para una lista de 3 o más, quiero una coma después de la segunda a la última elemento. Para listas de dos, no quiero coma.
¿Intentó su código con dos elementos? Está funcionando –
Funciona, pero no tiene la coma de Oxford. – Andrea
+1 para la coma de Oxford – erroric