Webly: Formulário Nos Padrões - Webly

Ir para

Regras para postagem

É permitido postar livremente respostas com comentários, testes e avaliações dos scripts. Postagens contendo dúvidas sobre o script, deverão ser postadas no fórum principal de Webstandards/Tableless/CSS/XML.

IMPORTANTE: Todos os tutoriais postados neste fórum irão automaticamente para o portal Webly. Contribua você também e faça parte da equipe de colaboradores que fazem a evolução da web. Obrigado.


  • (2 Páginas)
  • +
  • 1
  • 2

Formulário Nos Padrões XHTML + CSS Avaliar tópico: -----

#1 Membro offline   CassianoOliver Ícone

  • cassianodesigner.com
  • Ícone
  • Grupo: Membro Amigo
  • Posts: 661
  • Cadastrado: 07-agosto 07
  • Localização:São Mateus - ES

Ícone  Postou 09 dezembro 2007 - 09:00

Olá pessoal, sei que não sou nenhum "expert" em webstandards, mas venho aqui deixar uma contribuição para quem está iniciando.

Esse tutorial mostrará como desenvolver um formulário semanticamente correto. Sempre vejo em sites que muitos utilizam tabelas para estrutar o formulário, mas todos nós sabemos (ou deveriam saber) que tabelas são utilizadas para exibir dados tabulados.

Vamo lá então...

1º, montando o XHTML da página...

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
 <title>Formulário semanticamente correto</title>
 </head>
 
 <body>
 <form action="" method="post">
	 <label for="nome" id="lnome">
	 <span class="campo">Nome</span> <input type="text" name="nome" id="nome" />
	 </label>
	 
	 <label for="email" id="lemail">
	 <span class="campo">E-mail</span> <input type="text" name="email" id="email" />
	 </label>
	 
	 <label for="cidade" id="lcidade">
	 <span class="campo">Cidade</span> <input type="text" name="cidade" id="cidade" />
	 </label>
	 
	 <label for="estado" id="lestado">
	 <span class="campo">Estado</span>
	 <select name="estado" id="estado">
		 <option>ES</option>
	 </select>
	 </label>
	 
	 <label for="assunto" id="lassunto">
	 <span class="campo">Assunto</span> <input type="text" name="assunto" id="assunto" />
	 </label>
	 
	 <label for="mensagem" id="lmensagem">
	 <span class="campo">Mensagem</span> <textarea name="mensagem" id="mensagem"></textarea>
	 </label>
	 
	 <button type="submit" id="enviar">Enviar</button>
 </form>
 </body>
 </html>




* Para quem ainda não conhece a tag <label>, é utlizada em elementos de formulário, proporcionando uma maior facilidade de acesso a esses elementos. Com o parâmetro "for='nome_do_elemento'" fazemos com que o <label> fique "clicável", assim podemos por acessar ou marcar o elemento. Só não deve ser usada em elementos do tipo botão.

A visualização inicial do formulário será essa:
Imagem

Agora vamos ao CSS:

<style type="text/css">
 /* ZERANDO ATRIBUTOS EM TODOS OS SELETORES */
 * {
	 margin: 0;
	 padding: 0;
 }
 
 /* FORMATANDO A FONTE, TAMANHO E COR PADRÃO */
 body {
	 font-family: Arial, Helvetica, sans-serif;
	 font-size: 12px;
	 color: #333;
	 margin: 50px 0 0 50px; /* SÓ PARA NÃO FICAR COLADO NAS MARGENS DA PÁGINA */
 }
 
 /* LABEL */
 label {
	 display: block; /* DEIXANDO UM ACIMA DO OUTRO */
	 margin: 5px 0 5px 0; /* ESPAÇO ACIMA E ABAIXO */
 }
 
 /* FORMATANDO OS IDENTIFICADORES DOS CAMPOS */
 label span {
	 display: block;
	 width: 80px;
	 margin-top: 2px;
	 float: left;
 }
 
 /* FORMATANDO INPUT, SELECT E TEXTAREA */
 input, textarea, select {
	 color: #336699;
	 width: 200px;
	 border: solid 1px #006699;
 }
 
 /* SELECT COM LARGURA AUTOMÁTICA */
 select {
	 width: auto;
 }
 
 textarea {
	 height: 100px;
	 overflow: auto; /* BARRA DE ROLAGEM AUTOMÁTICA */
 }
 
 /* FORMATAÇÃO DO BOTÃO */
 button {
	 background: #0099CC;
	 color: #FFF;
	 font-weight: bold;
	 margin-top: 10px;
	 border: none;
 }
 </style>


Caso alguém comente, não utilizei <fieldset> porque acho que para esse tipo de formulário(pequeno e sem grupos) não seja necessário. E também não utilizei <legend> porque não gosto mesmo ;).

Resultado final
Imagem

simples não?

espero ter contribuído com alguma coisa...

dúvidas, críticas e elogios, mandem aê!
##### "O seu maior desafio é se aprimorar para ser... você mesmo!" #####
CASSIANODESIGNER.COM - Desenvolvimento Web
0

#2 Membro offline   David Cruvinel Ícone

  • Alguma Coisa!
  • Ícone
  • Grupo: Coordenadores
  • Posts: 1976
  • Cadastrado: 25-agosto 06
  • Localização:Guaxupé - MG

Postou 19 dezembro 2007 - 09:32

opa, tava fazendo um form aqui com seu tuto e me deparei com a seguinte situação:

no form tenho alguns input type="radio" e eles ficaram iguais os outros campos com a formatação de borda azul e grande, do mesmo tamanho dos campos.

como resolver isso?

ps: nao sei nada de css ainda.....rs

:thumbsup:
Portal Onde tem Festa - Divulgação e Cobertura de Eventos
www.ondetemfesta.com.br

DEC WebSites - Desenvolvimento de WebSites
www.decwebsites.com.br
0

#3 Membro offline   luishenrique Ícone

  • Luís Henrique
  • Ícone
  • Grupo: Moderadores
  • Posts: 954
  • Cadastrado: 30-novembro 06
  • Sexo:Male
  • Localização:Minas Gerais
  • Interesses:Web Standards, Python, PHP, Software Livre, Blogosfera.

Postou 19 dezembro 2007 - 09:50

David, tenta usar:

input[type="radio"] { border:none; }

Graduando em Ciência da Computação
UFLA - Universidade Federal de Lavras

Blog: http://luishenrique.org/blog
Identi.ca: @luish
Twitter: @lshenr

:)
0

#4 Membro offline   David Cruvinel Ícone

  • Alguma Coisa!
  • Ícone
  • Grupo: Coordenadores
  • Posts: 1976
  • Cadastrado: 25-agosto 06
  • Localização:Guaxupé - MG

Postou 19 dezembro 2007 - 09:54

Opaaa....

uai, não deu certo não, coloquei assim:

input, textarea, select {
	 color: #336699;
	 width: 200px;
	 border: solid 1px #006699;
}

input[type="radio"] {
border:none;
}

Portal Onde tem Festa - Divulgação e Cobertura de Eventos
www.ondetemfesta.com.br

DEC WebSites - Desenvolvimento de WebSites
www.decwebsites.com.br
0

#5 Membro offline   CassianoOliver Ícone

  • cassianodesigner.com
  • Ícone
  • Grupo: Membro Amigo
  • Posts: 661
  • Cadastrado: 07-agosto 07
  • Localização:São Mateus - ES

Postou 19 dezembro 2007 - 01:53

opa...
faz assim david,
atribui uma classe aos inputs radio...
<input type='radio' ...... class='radio' />


e no css
input.radio {
	 border: none;
}


tentaí...
##### "O seu maior desafio é se aprimorar para ser... você mesmo!" #####
CASSIANODESIGNER.COM - Desenvolvimento Web
0

#6 Membro offline   Cledilson Ícone

  • Aprendendo sempre - Cadastre-se no fórum!!!
  • Ícone
  • Grupo: Membro Amigo
  • Posts: 599
  • Cadastrado: 22-junho 07
  • Sexo:Male
  • Localização:Itapebi - Bahia
  • Interesses:Aprender e Orientar (Como se eu soubesse algo... haha)

Postou 19 dezembro 2007 - 10:56

Aê...
Parabéns Cassiano...
o tuto ficou muito bom!!!
[center] ::: | Open Lince = www.openlince.com.br - Meu blog = cledilsonweb.blogspot.com | :::
-------------------------------------------------------------
::: | Ubuntu 9.10 | :::
-------------------------------------------------------------
::: | [b]Deus seja louvado[/b] | :::
[/center]
0

#7 Membro offline   CassianoOliver Ícone

  • cassianodesigner.com
  • Ícone
  • Grupo: Membro Amigo
  • Posts: 661
  • Cadastrado: 07-agosto 07
  • Localização:São Mateus - ES

Postou 20 dezembro 2007 - 10:17

vlw cledilson!
##### "O seu maior desafio é se aprimorar para ser... você mesmo!" #####
CASSIANODESIGNER.COM - Desenvolvimento Web
0

#8 Membro offline   David Cruvinel Ícone

  • Alguma Coisa!
  • Ícone
  • Grupo: Coordenadores
  • Posts: 1976
  • Cadastrado: 25-agosto 06
  • Localização:Guaxupé - MG

Postou 21 janeiro 2008 - 12:44

aproveitando......

vc sabe me dizer pq qdo se cria um form, no IE fica no tamanho certo em altura, e no FF fica um espaço em branco no final aumentando o tamanho na altura...

falows
Portal Onde tem Festa - Divulgação e Cobertura de Eventos
www.ondetemfesta.com.br

DEC WebSites - Desenvolvimento de WebSites
www.decwebsites.com.br
0

#9 Membro offline   CassianoOliver Ícone

  • cassianodesigner.com
  • Ícone
  • Grupo: Membro Amigo
  • Posts: 661
  • Cadastrado: 07-agosto 07
  • Localização:São Mateus - ES

Postou 21 janeiro 2008 - 10:16

hum....
nunca reparei isso...
vo ver aqui...
##### "O seu maior desafio é se aprimorar para ser... você mesmo!" #####
CASSIANODESIGNER.COM - Desenvolvimento Web
0

#10 Membro offline   luishenrique Ícone

  • Luís Henrique
  • Ícone
  • Grupo: Moderadores
  • Posts: 954
  • Cadastrado: 30-novembro 06
  • Sexo:Male
  • Localização:Minas Gerais
  • Interesses:Web Standards, Python, PHP, Software Livre, Blogosfera.

Postou 22 janeiro 2008 - 09:45

Nem eu. Posta um screenshot pra ver. :)
Graduando em Ciência da Computação
UFLA - Universidade Federal de Lavras

Blog: http://luishenrique.org/blog
Identi.ca: @luish
Twitter: @lshenr

:)
0

#11 Membro offline   David Cruvinel Ícone

  • Alguma Coisa!
  • Ícone
  • Grupo: Coordenadores
  • Posts: 1976
  • Cadastrado: 25-agosto 06
  • Localização:Guaxupé - MG

Postou 22 janeiro 2008 - 10:02

Aí está:

Imagem
Portal Onde tem Festa - Divulgação e Cobertura de Eventos
www.ondetemfesta.com.br

DEC WebSites - Desenvolvimento de WebSites
www.decwebsites.com.br
0

#12 Membro offline   luishenrique Ícone

  • Luís Henrique
  • Ícone
  • Grupo: Moderadores
  • Posts: 954
  • Cadastrado: 30-novembro 06
  • Sexo:Male
  • Localização:Minas Gerais
  • Interesses:Web Standards, Python, PHP, Software Livre, Blogosfera.

Postou 22 janeiro 2008 - 11:11

Ainda nao entendi. :blink:
Graduando em Ciência da Computação
UFLA - Universidade Federal de Lavras

Blog: http://luishenrique.org/blog
Identi.ca: @luish
Twitter: @lshenr

:)
0

#13 Membro offline   David Cruvinel Ícone

  • Alguma Coisa!
  • Ícone
  • Grupo: Coordenadores
  • Posts: 1976
  • Cadastrado: 25-agosto 06
  • Localização:Guaxupé - MG

Postou 22 janeiro 2008 - 11:23

Veja que na imagem do IE a página acaba logo após os botoes...

No FF a página se estende um pouco mais após os botoes pra depois acabar.....

entendeu?
Portal Onde tem Festa - Divulgação e Cobertura de Eventos
www.ondetemfesta.com.br

DEC WebSites - Desenvolvimento de WebSites
www.decwebsites.com.br
0

#14 Membro offline   CassianoOliver Ícone

  • cassianodesigner.com
  • Ícone
  • Grupo: Membro Amigo
  • Posts: 661
  • Cadastrado: 07-agosto 07
  • Localização:São Mateus - ES

Postou 24 janeiro 2008 - 05:42

como ta o xhtml e o css do seu form?
##### "O seu maior desafio é se aprimorar para ser... você mesmo!" #####
CASSIANODESIGNER.COM - Desenvolvimento Web
0

#15 Membro offline   Elomar França Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 31
  • Cadastrado: 08-outubro 06
  • Localização:Natal, RN
  • Interesses:web standards<br />java<br />ror<br />desenvolvimento em geral<br /><br />gta

Postou 17 fevereiro 2008 - 07:51

Só uma pequena correção:

Esse código:

<label for="assunto" id="lassunto">
	 <span class="campo">Assunto</span> <input type="text" name="assunto" id="assunto" />
</label>


Você pode substituir por isso:

<label for="assunto" id="lassunto">Assunto:</label><input type="text" name="assunto" id="assunto" />


Já que o label de um campo não deve contê-lo, deve fechar antes dele começar.
Elomar França
http://codando.wordpress.com


<strong> says: madness? blasfemy? THIIS IIISSS STANDAAARD!
<b> was kicked

=)
0

  • (2 Páginas)
  • +
  • 1
  • 2


Resposta rápida

  

1 usuário(s) está(ão) lendo este tópico
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)