Basicamente, tenho dois css externos na minha página.
O primeiro Main.css
contém todas as regras de estilo, mas não tenho acesso a ele e, portanto, não posso modificá-lo. Tenho acesso a um segundo arquivo Template.css
, então preciso substituir os Main.css
valores de em template.css
.
É fácil, pelo que tenho de alterar o valor, mas como posso remover uma propriedade completamente?
Por exemplo, digamos que uma classe .c1
tenha height: 40px;
, como faço para me livrar dessa propriedade de altura?
Respostas:
Você deve redefinir cada propriedade individual de volta ao seu valor padrão. Não é ótimo, mas é a única maneira, dadas as informações que você nos deu.
Em seu exemplo, você faria:
Você deve pesquisar cada propriedade aqui:
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference
Por exemplo
height
:Outro exemplo
max-height
:Em 2017, existe agora uma outra forma, a
unset
palavra-chave:Alguma documentação: https://developer.mozilla.org/en-US/docs/Web/CSS/unset
O suporte do navegador é bom: http://caniuse.com/css-unset-value
fonte
O
unset
valor adicionado em CSS3 também resolve esse problema e é ainda mais um método universal do queauto
ouinitial
porque define para cada propriedade CSS seu valor padrão e, adicionalmente, seu comportamento padrão em relação ao pai.Observe que o
initial
valor quebra o comportamento mencionado.Do MDN :
fonte
Infelizmente, você não pode. CSS não tem um espaço reservado "padrão".
Nesse caso, você redefiniria a propriedade usando
como @Ben aponta corretamente, em alguns casos,
inherit
é o caminho correto a seguir, por exemplo, ao redefinir a cor do texto de uma
elemento (essa propriedade é herdada do elemento pai):fonte
Uma
initial
palavra-chave está sendo adicionada ao CSS3 para permitir que os autores especifiquem explicitamente esse valor inicial.fonte
height:initial;
não parece funcionar no IE9.initial
eauto
eunset
?.Para se livrar da propriedade de altura fixa, você pode defini-la com o valor padrão:
fonte
Você precisa fornecer um seletor com maior especificidade do que aquele em
Main.css
. Com esse seletor, defina os valores das propriedades que deseja para o padrão, por exemploNão há um valor "padrão" que funcione para todas as propriedades, você precisa verificar qual é o padrão para cada uma e usá-lo.
fonte
Tive um problema que, mesmo quando substituí "altura" para "não definido" ou "inicial", ele se comportava de maneira diferente de quando removi a configuração anterior.
Acontece que eu precisava remover a propriedade min-height também!
Edit: Eu testei no IE 7 e ele não reconhece "unset", então "auto" funciona melhor ".
fonte