Eu tenho um div para o qual desejo especificar uma largura e altura FIXAS, e também um preenchimento que pode ser alterado sem diminuir a largura / altura original do DIV ou aumentá-la. Existe um truque de CSS para isso ou uma alternativa de preenchimento?
93
Declare isso em seu CSS e você deve ser bom:
Essa solução pode ser implementada sem usar wrappers adicionais.
Isso forçará o navegador a calcular a largura de acordo com a largura "externa" da div, o que significa que o preenchimento será subtraído da largura.
fonte
Parece que você está tentando simular o modelo de caixa do IE6. Você poderia usar a propriedade box-sizing: border-box do CSS 3 para fazer isso. Isso é suportado pelo IE8, mas para Firefox você precisa usar
-moz-box-sizing
e para Safari / Chrome, use-webkit-box-sizing
.O IE6 já calcula a altura incorretamente, então você é bom nesse navegador, mas não tenho certeza sobre o IE7, acho que ele calculará a altura da mesma forma no modo quirks.
fonte
tente este truque
isso forçará o navegador a calcular a largura de acordo com a largura "externa" da div, o que significa que o preenchimento será subtraído da largura.
fonte
Para obter um resultado consistente para o navegador cruzado, você normalmente adicionaria outro
div
dentro dodiv
e não forneceria largura explícita, e amargin
. Omargin
irá simularpadding
para o div externo.fonte