Os dispositivos iOS adicionam muitos estilos incômodos nas entradas de formulários, principalmente na entrada [type = submit]. Abaixo, é mostrado o mesmo formulário de pesquisa simples em um navegador de desktop e em um iPad.
Área de Trabalho:
iPad:
A entrada [type = text] usa uma inserção de sombra de caixa CSS e eu até especifiquei -webkit-border-radius: none; que aparentemente é substituído. A cor e o formato do meu botão de entrada [type = submit] ficam completamente danificados no iPad. Alguém sabe o que posso fazer para consertar isso? Desde já, obrigado.
-webkit-border-radius:none;
você especificouborder-radius:none;
?-webkit-appearance:none
e-webkit-border-radius:0
fiz o truque no iOS para mim!Respostas:
A versão que eu tinha funcionando é:
Em algumas versões de navegador de webkit, você também pode se deparar com o
border-radius
ainda estar no lugar. Redefina com o seguinte:Isto pode ser estendido para aplicar a todos os webkit denominado
form
componentes, tais comoinput
,select
,button
outextarea
.Em referência à pergunta original, você não usaria o valor 'nenhum' ao limpar qualquer elemento css baseado em unidade. Também esteja ciente de que isso oculta as caixas de seleção no Chrome, então talvez use algo como
input[type=text]
ouinput[type=submit], input[type=text]
(observe queinput:not([type=checkbox]), input:not([type=radio])
se aplicará a todos os tipos de entrada, uma vez que cada entrada satisfaz qualquer uma dessas duas condições).fonte
input:not([type=checkbox]), input:not([type=radio])
significa que o estilo se aplica a todos os botões do Safari, uma vez que cada botão satisfaz uma dessas duas condições. Em vez disso, eu useiinput[type=submit], input[type=text]
.Você pode se livrar de mais alguns estilos de formulário, entrada, etc. de webkits com este:
fonte
border-radius: 0;
redefinir completamente e não quer um raio de borda. Caso contrário, basta definir oborder-radius
.Para o botão de envio, não use:
Em vez disso, use a tag do botão:
Isso funcionou para mim.
fonte
<button>
tags. Portanto, acho melhor você resolver isso diretamente com CSS.dê uma olhada em normalize.css
Há uma demonstração onde você pode testar os elementos do formulário e ver como eles se parecem no iOS. Existem várias propriedades orientadas para webkit.
fonte
Isso é o que eu uso em meus projetos
fonte
Você também terá esse problema em alguns navegadores se tiver o seguinte:
ao invés de:
Isso pode acontecer se você alterar seu elemento de entrada para um elemento anker e esquecer de alterar
type
pararole
.Eu tive esse problema no Chrome e Safari no meu IPad.
fonte