::Objetivo::
Mostrar como personalizar um formulário de contato com uso de CSS.
::Um formulário padrão::
Um formulário de contato típico consta de:
três campos de input para texto: nome,
e-mail e assunto;
um campo textarea para o texto da mensagem;
um input tipo botão para envio da mensagem.
Vamos admitir nosso formulário "dentro" de uma tabela, com duas colunas e seis linhas, tudo conforme mostrado abaixo:
::O HTML do formulário::
- <form name="nomedoform" action="xxxx"
- method="xxxx" >
- <table>
- <tr>
- <th colspan="2">Formul&aacute;rio de contato
- </th>
- </tr>
- <tr>
- <td><label for="nome">Nome</label></td>
- <td><input name="nome" type=text size="33"
- maxlength="1000"></td>
- </tr>
- <tr>
- <td><label for="email">*e-mail</label></td>
- <td><input name="email" type=text size="33"
- maxlength="1000"></td>
- </tr>
- <tr>
- <td><label for="assunto">Assunto</label></td>
- <td><input name="subject" type=text size="33"
- maxlength="1000"></td>
- </tr>
- <tr>
- <td><label for="comentario">*Coment&aacute;rios</label></td>
- <td><textarea name="comentario" cols="25"
- rows="7" ></textarea></td>
- </tr>
- <tr>
- <td><input name="submit" type="submit"
- value="Enviar" class="botao"></td>
- <td>* Campos de preenchimento obrigat&oacute;rio</td>
- </tr>
- </table>
- </form>
Nota: Este é o HTML da tabela mostrada acima.
Para efeito de clareza coloquei um cellpadding e uma borda na tabela mostrada
e que não constam do HTML.
Em consequência se você copiar-colar o HTML acima, não verá as bordas da tabela e elas não interessam para nosso tutorial.
::O formulário estilizado::
Abaixo o formulário pronto, com as regras CSS aplicadas.
Mostro o formulário desde já, para que você tenha uma
noção antecipada do final e com isto facilitar o entendimento
do tutorial a medida que for lendo.
::Estilizando a "caixa" que contém o formulário::
A "caixa" que contém o formulário é a Tabela.
Para estilizar a tabela vamos atribuir-lhe uma "id" e escrever regras CSS para esta "id".
Escolhi o nome da id todoform
Acresento no HTML:
- <table id="todoform">
E escrevo a seguinte regra CSS:
#todoform {
background:#4f4f4f; /* uma cor escura para o fundo
do formulário */
font:12px arial, verdana, helvetica, sans-serif; /*
o tamanho e o tipo da fonte no formulário */
border-top:8px solid #cfcfcf; /* uma borda superior
de 8px solida na cor cinza clara no formulário */
border-left:8px solid #cfcfcf; /* a borda esquerda
do formulário */
border-right:8px solid #696969; /* a borda direita
do formulário */
border-bottom:8px solid #696969; /* a borda inferior
do formulário */
border-collapse:collapse; /* retira as bordas duplas
nas células da tabela */
color:#ff9900; /* a cor laranja para as letras */
}
::Estilizando o título::
O título: "Formulário de contato" está contido dentro da tag th da Tabela.
A regra CSS para o título é esta:
#todoform th {
background:#000000; /* a cor
preta para o fundo do título */
padding:3px; /* um afastamento
de 3px */
font: bold 15px arial, verdana, helvetica, sans-serif; /*
letras em negrito com 15px e familia arial, verd....*/
border-bottom:1px solid #ff9900; /*
uma borda inferior solida de 1px na cor laranja */
}
::Estilizando os tres campos input::
A regra CSS para os campos é esta:
#todoform input {
background:#b5b5b5; /* a cor do fundo dos três
campos */
border:1px dashed #ff9900; /* uma borda de 1px tracejada
e na cor laranja para o campo */
}
::Estilizando a textarea::
A regra CSS para o campo da mensagem é esta:
#todoform textarea {
background:#b5b5b5; /* a cor do fundo do campo */
border:1px dashed #ff9900; /* uma borda de 1px tracejada
e na cor laranja para o campo */
scrollbar-arrow-color:#ffffff; /* a partir daqui a
estilização da barra de scroll do campo da mensagem */
scrollbar-3dlight-color:#b5b5b5;
scrollbar-highlight-color:#b5b5b5;
scrollbar-face-color:#000000;
scrollbar-shadow-color:#b5b5b5;
scrollbar-darkshadow-color:#b5b5b5;
scrollbar-track-color:#b5b5b5;
}
::Estilizando o botão enviar::
A regra CSS para o botão é esta:
- #todoform input.botao {
- background:#000000; /* a cor do fundo do botão
- */
- color:#ffffff; /* a cor das letras Enviar */
- border:2px solid #ffffff; /* uma borda de 2px
- solida e branca no botão*/
- }
::Um toque final::
E, para que os campos não fiquem tão colados nos nomes dos campos acresentamos um espaçamento de 3px nas células
A regra CSS para o espaçamento é esta:
#todoform td {
padding:3px;<
}
::O código pronto::
E, a seguir o código completo de uma página com o formulário estilizado, para você copiar-colar, ESTUDAR e adaptar para suas necessidades.
- <html>
- <head>
- <title>Formul&aacute;rio estilizado</title>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <style type="text/css">
- #todoform {
- background:#4f4f4f;
- font:12px arial, verdana, helvetica, sans-serif;
- border-top:8px solid #cfcfcf;
- border-left:8px solid #cfcfcf;
- border-right:8px solid #696969;
- border-bottom:8px solid #696969;
- border-collapse:collapse;
- color:#ff9900;
- }
- #todoform th {
- background:#000000;
- padding:3px;
- font: bold 15px arial, verdana, helvetica, sans-serif;
- border-bottom:1px solid #ff9900;
- }
- #todoform td {
- padding:3px;
- }
- #todoform input {
- background:#b5b5b5;
- border:1px dashed #ff9900;
- }
- #todoform textarea {
- border:1px dashed #ff9900;
- background:#b5b5b5;
- scrollbar-arrow-color:#ffffff;
- scrollbar-3dlight-color:#b5b5b5;
- scrollbar-highlight-color:#b5b5b5;
- scrollbar-face-color:#000000;
- scrollbar-shadow-color:#b5b5b5;
- scrollbar-darkshadow-color:#b5b5b5;
- scrollbar-track-color:#b5b5b5;
- }
- #todoform input.botao {
- background:#000000;
- color:#ffffff;
- border:2px solid #ffffff;
- }
- </style>
- </head>
- <body>
- <form name="nomedoform" action="" method="" >
- <table id="todoform">
- <tr>
- <th colspan="2">Formul&aacute;rio de contato</th>
- </tr>
- <tr>
- <td><label for="nome">Nome</label></td>
- <td><input name="nome" type=text size="33" maxlength="1000"></td>
- </tr>
- <tr>
- <td><label for="email">*e-mail</label> </td>
- <td><input name="email" type=text size="33" maxlength="1000"> </td>
- </tr>
- <tr>
- <td><label for="assunto">Assunto</label> </td>
- <td><input name="subject" type=text size="33" maxlength="1000"> </td>
- </tr>
- <tr>
- <td><label for="comentario">*Coment&aacute;rios</label> </td>
- <td><textarea name="comentario" cols="25" rows="7" ></textarea> </td>
- </tr>
- <tr>
- <td><input name="submit" type="submit" value="Enviar" class="botao"> </td>
- <td>* Campos de preenchimento obrigat&oacute;rio</td>
- </tr>
- </table>
- </form>
- </body>
- </html>
Comentários