Estou me perguntando por que o navegador mostra aspas duplas abertas apenas para o primeiro elemento. O segundo elemento tem aspas simples.
a::before {
content: open-quote;
}
<a href="http://www.google.com">Google</a> <br>
<a href="http://www.amazon.com">Amazon</a>
html
css
pseudo-element
css-content
Pavan Tiwari
fonte
fonte
open-quote
se abrir uma citação. Não se refere a um caractere de aspas duplas.Respostas:
Suas aspas abertas não são encerradas, então o navegador faz a suposição "inteligente" de que você está prestes a aninhar suas aspas, resultando em aspas externas duplas para o primeiro elemento e aspas internas simples para o segundo. É assim que a pontuação das citações funciona em citações aninhadas. Consulte a Wikipedia e as referências a citações aninhadas nela.
Notavelmente, os limites do elemento são ignorados, por isso não importa, mesmo se seu segundo elemento for aninhado mais profundamente ou se ambos os elementos estiverem aninhados em seus próprios elementos pais, ele ainda funcionará da mesma maneira, o que o torna particularmente útil em parágrafos que podem conter diferentes tipos e combinações de elementos fraseado (
a
,br
,code
,em
,span
,strong
, etc, bem comoq
em si). Como as cotações são aninhadas depende exclusivamente do número deopen-quote
s eclose-quote
s que foram gerados em qualquer ponto no tempo, e o algoritmo é detalhado na seção 12.3.2 da especificação CSS2 , terminando com a seguinte nota:Para esse fim, existem duas chamadas "soluções" para esse problema, ambas envolvendo a adição de um
::after
pseudoelemento para equilibrar o primeiro conjunto de cotações em aberto.Ao inserir aspas fechadas,
::after
o primeiro elemento é encerrado antes que o segundo elemento seja encontrado, portanto, não há aninhamento de aspas.Se você realmente não deseja renderizar aspas fechadas, ainda pode evitar que o navegador gere aspas simples para o segundo elemento usando
no-close-quote
.fonte
Isso porque você não fechou as cotações anteriores, as próximas ficarão apenas com uma
'
.então use o pseudo elemento
after
comcontent: close-quote
Veja o snippet abaixo:
Exibir trecho de código
Você também pode editar as aspas primárias e secundárias em uma tag usando a propriedade CSS de aspas da seguinte maneira:
veja o snippet abaixo:
fonte