Existem muitos artigos e perguntas sobre fontes de tamanho percentual ou outro tamanho . No entanto, não consigo descobrir o que a referência do valor percentual deveria ser. Entendo que este é 'o mesmo tamanho em todos os navegadores'. Eu também li isso, por exemplo:
Porcentagem (%): a unidade de porcentagem é muito parecida com a unidade "em", exceto por algumas diferenças fundamentais. Em primeiro lugar, o tamanho da fonte atual é igual a 100% (ou seja, 12pt = 100%). Ao usar a unidade de porcentagem, seu texto permanece totalmente escalável para dispositivos móveis e para acessibilidade.
Fonte: http://kyleschaeffer.com/best-practices/css-font-size-em-vs-px-vs-pt-vs/
Mas se você disser "ou seja, 12 pt = 100%", significa que você precisa primeiro definir font-size: 12pt
. É assim que funciona? Você primeiro define um tamanho em uma medida absoluta e depois se refere a ele como '100%'? Não faz muito sentido, pois muitas amostras dizem que é útil colocar:
body {
font-size: 100%;
}
Portanto, ao fazer isso, O QUE é o tamanho da fonte em relação ao? Percebo que o tamanho que vejo na tela é diferente para cada fonte. Arial parece muito maior que o Times New Roman, por exemplo. Além disso, se eu fizer isso, tamanho do corpo = 100%, isso significa que será o mesmo em todos os navegadores? Ou apenas se eu primeiro definir um valor absoluto?
ATUALIZAÇÃO, SÁBADO 23 DE JULHO
Estou chegando lá, mas por favor, tenha paciência comigo.
Portanto, o valor% está relacionado ao tamanho da fonte do navegador padrão, se bem entendi. Bem, isso é bom, mas me dá novamente várias outras perguntas:
- Esse tamanho padrão é sempre o mesmo para todas as versões do navegador ou elas variam entre as versões?
- EU ! Encontrei (veja a imagem abaixo) as configurações do Google Chrome (nunca vi isso antes!) e vejo as configurações padrão "serif", "sans-serif" e "monospace". Mas como interpreto isso para outras fontes? Digamos que eu defina
font: 100% Georgia;
, que tamanho o navegador terá? Ele procurará o tamanho padrão para serif ou tem a fonte "Georgia" um tamanho padrão para o navegador - Em vários sites, eu leio coisas como
Sizing text and line-height in ems, with a percentage specified on the body [..], was shown to provide **accurate, resizable text across all browsers** in common use today
. Mas, pelo que estou aprendendo agora, acredito que você deve realmente escolher entre texto redimensionável (usando% ou em, como o recomendado nesta citação) ou ter 'tamanhos de fonte precisos e consistentes nos navegadores' (usando px ou pt como base). Isso está correto?
Configurações do Google:
É assim que acho que as coisas poderiam parecer se você não definir o tamanho em valores absolutos.
font-size
usando unidades relativas, comoem
,rem
, ou%
. O usopx
substituirá o tamanho da fonte padrão do navegador! Muitos usuários especificam um tamanho de fonte personalizado para facilitar a leitura do texto.Meu entendimento é que, quando a fonte é definida da seguinte forma
o navegador renderizará a fonte de acordo com as configurações do usuário para esse navegador.
A especificação diz que% é processado
http://www.w3.org/TR/CSS1/#font-size
Nesse caso, entendo isso como o navegador está definido.
fonte
body
éhtml
. assimbody { font-size: 100%; }
será 100% dohtml
tamanho da fonte, não o padrão do navegador. Normalmente, esses são os mesmos, portanto, você está efetivamente correto. Mas às vezes você verá umahtml { font-size: ??? }
regra.Uma porcentagem no valor da
font-size
propriedade é relativa ao tamanho da fonte do elemento pai . O CSS 2.1 diz isso de forma obscura e confusa (referindo-se ao "tamanho da fonte herdada"), mas o Texto CSS3 diz isso de forma muito clara.O pai do
body
elemento é o elemento raiz, ou seja, ohtml
elemento A menos que definido em uma folha de estilos, o tamanho da fonte do elemento raiz é dependente da implementação. Geralmente depende das configurações do usuário.A configuração
font-size: 100%
é inútil em muitos casos, pois um elemento herda o tamanho da fonte do pai (levando ao mesmo resultado), se nenhuma folha de estilo definir seu próprio tamanho da fonte. No entanto, pode ser útil substituir configurações em outras folhas de estilo (incluindo folhas de estilo padrão do navegador).Por exemplo, um
input
elemento normalmente possui uma configuração na folha de estilos do navegador, tornando seu tamanho de fonte padrão menor que o do texto da cópia. Se você deseja que o tamanho da fonte seja o mesmo, você pode definirentrada {tamanho da fonte: 100%}
Para o
body
elemento, a configuração logicamente redundantefont-size: 100%
é usada com bastante frequência, pois acredita-se que ela ajude contra alguns bugs do navegador (em navegadores que provavelmente perderam seu significado agora).fonte
font-size:100%
poderia servir a um objetivo é no modo Quirks, em que os tamanhos das fontes não são herdados nas tabelas. Com esse estilo, as tabelas obtêm o tamanho da fonte pai. É claro que ninguém no seu perfeito juízo usa o modo Quirks mais ...É relativo ao tamanho da fonte do navegador padrão, a menos que você o substitua por um valor em pt ou px.
fonte
body
, não um elemento arbitrariamente aninhados, então a resposta é correta com um pequeno asterisco :)Desculpe se estou atrasado para a festa, mas em sua edição você faz um comentário sobre o
font: 100% Georgia
qual as outras respostas não responderam.Há uma diferença entre
font: 100% Georgia
efont-size:100%; font-family:'Georgia'
. Se esse fosse o método abreviado, a parte do tamanho da fonte não teria sentido. Mas também define muitas propriedades para seus valores padrão: a altura da linha se tornanormal
(ou em torno de 1,2), idem para o estilo (sem itálico) e o peso (sem negrito).Isso é tudo. As outras respostas já mencionavam tudo o mais que havia para mencionar.
fonte
Como você mostrou de forma convincente, o
font-size: 100%;
não renderizará o mesmo em todos os navegadores. No entanto, você definirá a face da fonte no seu arquivo CSS, portanto será a mesma (ou alternativa) em todos os navegadores.Acredito que
font-size: 100%;
pode ser muito útil ao combiná-lo com oem
design baseado em. Como mostra este artigo , isso criará um site muito flexível.Quando isso é útil? Quando o seu site precisa se adaptar aos desejos dos visitantes. Tomemos, por exemplo, um homem idoso que coloca o tamanho da fonte padrão em 24 px. Ou alguém com uma tela pequena com uma resolução grande que aumenta o tamanho da fonte padrão porque, de outra forma, ele precisa apertar os olhos. A maioria dos sites falha, mas sites baseados em em são capazes de lidar com essas situações.
fonte
Relativo ao tamanho padrão definido para essa fonte.
Se alguém abrir sua página em um navegador da Web, há uma fonte e tamanho de fonte padrão usados.
fonte
Quanto ao meu entendimento, ele ajuda seu conteúdo a se ajustar a diferentes valores da família e do tamanho das fontes, tornando o conteúdo escalável. Quanto à questão de herdar o tamanho da fonte, sempre podemos substituir, fornecendo um tamanho de fonte específico para o elemento.
fonte
De acordo com TODAS AS ESPECIFICAÇÕES datadas de 1996 , os valores percentuais
font-size
referem-se ao tamanho da fonte (calculada) do elemento pai .É tão fácil.
E se o
div
declarar um tamanho de fonte relativo, comoem
s, ou pior ainda, outra porcentagem? Veja "computado" acima. Qualquer unidade absoluta em que a unidade relativa se converta.A única questão que resta é o que acontece quando você usa um valor percentual no elemento raiz, que não possui pai:
Nesse caso, consulte o "duplicado" desta pergunta. TLDR: porcentagens no elemento raiz referem-se ao tamanho da fonte padrão do navegador, que pode ser diferente por usuário.
Referências:
fonte