54
HTML & CSS ETEPAM ANDRÉ MELO HTML & CSS Conceitos e fundamentos

Html - CSS

Embed Size (px)

DESCRIPTION

Conceitos e fundamentos ETEPAM HTML & CSS ANDRÉ Conceitos e fundamentos ETEPAM HTML & CSS ANDRÉ ETEPAM • Web Standards (Padrões Web) é um termo geral que designa um conjunto de recomendações e especificações técnicas que norteiam o desenvolvimento para a World Wide Web. • O termo também adquiriu um significado mais extenso sendo associado a um conjunto de boas práticas ou uma filosofia de desenvolvimento para a web que segue o mais fielmente possível as especificações propostas. HTML & CSS

Citation preview

Page 1: Html - CSS

HTML & CSS ETEPAM

ANDRÉ MELO

HTML & CSS

Conceitos e fundamentos

Page 2: Html - CSS

HTML & CSS ETEPAM

ANDRÉ MELO

HTML & CSS

Conceitos e fundamentos

Page 3: Html - CSS

HTML & CSS ETEPAMWeb Standards

• Web Standards (Padrões Web) é um termo geral que designa um conjunto de recomendações e especificações técnicas que norteiam o desenvolvimento para a World Wide Web.

• O termo também adquiriu um significado mais extenso sendo associado a um conjunto de boas práticas ou uma filosofia de desenvolvimento para a web que segue o mais fielmente possível as especificações propostas.

Page 4: Html - CSS

HTML & CSS ETEPAMFazem parte dos Web Standards:

• Recomendações publicadas pelo W3C.

• Padrões publicados pela ECMA International (ECMA).

• Padrões Unicode e vários Unicode Technical Reports (UTRs) publicados pelo Unicode Consortium.

Page 5: Html - CSS

HTML & CSS ETEPAMNa prática o que temos?

• Recomendações para linguagem de marcação (markup languages) como HTML, XML, XHTML, SVG and XForms, do W3C.

• Recomendações para folhas de estilo (stylesheets) como o CSS, também do W3C.

• Padrões para ECMAscript como o JavaScript, da ECMA International.

• Recomendações para o Document Object Model (DOM), do W3C.

Page 6: Html - CSS

HTML & CSS ETEPAMSemantic Web:

• Semantic Web (Web Semântica) é uma iniciativa liderada pelo W3C que visa prover um framework para reuso e compartilhamento de dados relevantes e significativos através de diversas aplicações.

• A iniciativa baseia-se no conceito que há uma grande massa de dados que usamos todos os dias e que ainda não está representada de maneira a proporcionar integracação e interoperabilidade. Ou seja, vários aplicativos possuem os seus dados em formatos proprietários que não podem ser compartilhados com outros aplicativos.

• A Web Semântica trata justamente de prover formatos de dados de modo a proporcionar integração, compartilhamento e combinação entre diversas aplicações. Além disso, procura criar formatos que relacionem, através da semântica, dados de computador com objetos e ações reais de modo a proporcionar o entendimento tanto pelas máquinas quanto pelos humanos.

Page 7: Html - CSS

HTML & CSS ETEPAMTableless:

• É um termo comumente utilizado para denominar uma metodologia de desenvolvimento que segue os Web Standards. A tradução de Tableless para português seria algo como "sem tabelas". Entretanto, isso não quer dizer que as tabelas não devam nunca ser usadas, mas sim deixar de ser usadas indiscriminadamente como instrumento estruturador de layouts. As tabelas HTML foram designadas para dispor dados tabulares e seu uso deve ser fiel a esse propósito.

• A metodologia defende jutamente que as tabelas utilizadas para estruturar os layouts, recurso largamente utilizado pelos web designers há tempos atrás, sejam substituídas por tags estruturais ou semânticas e que a formatação do layout seja colocada em uma camada separada sob responsabilidade do CSS (Cascading Style Sheets).

Page 8: Html - CSS

HTML & CSS ETEPAMDesenvolvimento em camadas:

10 a 20%80 a 90%

Page 9: Html - CSS

HTML & CSS ETEPAM

ANDRÉ MELO

HTML & CSS

Preparando o ambiente

Page 10: Html - CSS

HTML & CSS ETEPAMPara início de trabalho:

• Servidor remoto ou local para hospedagem de arquivos;

• Editor(s) HTML;• Diferentes tipos de browsers

instalados;• Ferramentas on-line

Page 11: Html - CSS

HTML & CSS ETEPAMServidor:

• Apache + banco de dados Mysql

Page 12: Html - CSS

HTML & CSS ETEPAMXampp:

Page 13: Html - CSS

HTML & CSS ETEPAMXampp:

Page 14: Html - CSS

HTML & CSS ETEPAMXampp:

Page 15: Html - CSS

HTML & CSS ETEPAMXampp:

Page 16: Html - CSS

HTML & CSS ETEPAMXampp:

Page 17: Html - CSS

HTML & CSS ETEPAMXampp:

Page 18: Html - CSS

HTML & CSS ETEPAMXampp:

Page 19: Html - CSS

HTML & CSS ETEPAMHtdocs:

Page 20: Html - CSS

HTML & CSS ETEPAMFirefox como ferramenta de desenvolvimento:

• Complementos:– Colorzilla;– Web Developer– Firebug;– Yslow;

• Onde encontrar?– http://addons.mozilla.org

Page 21: Html - CSS

HTML & CSS ETEPAMHTML vs. XHTML:

• todas as tags devem ser escritas em letras minúsculas;

• os elementos (tags) devem estar convenientemente aninhados;

• os documentos devem ser bem formados;

• o uso de tags de fechamento é obrigatório;

• elementos vazios devem ser fechados;

• diferenças para os atributos.

Page 22: Html - CSS

HTML & CSS ETEPAMDoctype

• A Definição do tipo de documento (Document Type Definitions DTD) especifica qual é a sintaxe SGML usada no documento. A DTD é usada pelas aplicações SGML ( tais como HTML ) para identificar as regras que se aplicam a linguagem de marcação usada no documento bem como o conjunto de elementos e entidades válidas naquela linguagem. Assim uma DTD para um documento XHTML descreve com precisão a sintaxe e a gramática da linguagem de marcação XHTML.

• De acordo com for declarado ou não declarado como DOCTYPE, o navegador irá definir como interpretará a sua página.

• O DOCTYPE deve ser sempre a primeira declaração em um documento web, salvo se houver XML Prolog.

Page 23: Html - CSS

HTML & CSS ETEPAMOs tipos de Doctype

• STRICT– Esta é a mais rígida das declarações. Os documentos

XHTML no modo Strict não admitem qualquer item de formatação dentro dos elementos e nem elementos em desuso "deprecated" segundo as recomendações do W3C. São indicados para uso com folhas de estilo em cascata, com marcação totalmente independente da apresentação.

• TRANSITIONAL– Esta declaração permite uma maior flexibilidade e é

indicada para documentos que ainda utilizem elementos em desuso ("deprecated"), regras de apresentação embutidas em tags e também para documentos destinados a exibição em browsers sem suporte para CSS. Não admite qualquer tipo de marcação para frames.

• FRAMESET– Esta declaração permite tudo da declaração

transational e mais os elementos especificos para frames.

Page 24: Html - CSS

HTML & CSS ETEPAMElementos e atributos

• Elementos são as Tags HTML e os atributos são inseridos nas tags

Page 25: Html - CSS

HTML & CSS ETEPAMCSS

• Por que usar CSS?– Além de ser simples e fácil de aprender, o

CSS é muito poderoso no controle da apresentação do conteúdo de uma HTML, reduz o tempo de carga das páginas, as alterações de layout podem ser feitas sem a necessidade de se alterar o HTML, da mesma forma com o HTML. O CSS também é responsável pela diminuição do consumo de banda por parte dos sites. CSS é portável para diferentes tipos de mídia como screen, pockets, print, handheld, web tv, braille, projection etc. CSS é uma linguagem totalmente voltada a acessibilidade web.

Page 26: Html - CSS

HTML & CSS ETEPAMCSS

• Inserir CSS no HTML– Inline– Incorporado– Externo

Page 27: Html - CSS

HTML & CSS ETEPAMCSS

• Sintaxeseletor{

Propriedade:valor;}

•Cada linha da propriedade termina com ";" ;•O uso do ";" é facultativo na última linha;•São case-sensitive;•Os seletores podem ser escritos com carcteres alfa-numéricos, underscore e hífen;•Deve-se evitar palavras acentuadas, iniciar com hífen, underscore e números os seletores CSS

Page 28: Html - CSS

HTML & CSS ETEPAMCSS

• Tipos de seletor– Agrupamento de seletor;– Seletores de identificação;– Seletores de classe;– Seletores contextual;– Seletores de atributo;– Seletor universal;– Seletores filho;– Seletores irmãos adjacentes

Page 29: Html - CSS

HTML & CSS ETEPAMCSS

• Pseudos– Pseudo classes;– Pseudo-classe":first-child “;– Pseudo-classe":focus “;– Pseudo-classe":lang “;– Pseudo-elemento":first-line “;– Pseudo-elemento":first-letter “;– Pseudo-elementos":after e

before “;

Page 30: Html - CSS

HTML & CSS ETEPAMCSS

• Efeito cascata: – O efeito cascata é um dos artificios mais

poderosos oferecidos pelo CSS, pois permite que propriedades sejam aplicadas a elementos que já possuem uma propriedade, dando um grau de importância maior a propriedade aplicada no mesmo elemento.

– Ordem de prioridade:• Folhas de estilo do usuário;• Folhas de estilo inline;• Folhas de estilo incorporada;• Folhas de estilo externas;• Folhas de estilo nativas

Page 31: Html - CSS

HTML & CSS ETEPAMCSS

• Herança: – São as propriedades declaradas

para um elemento e que são herdadas para todos os elementos filhos contidos dentro do elemento.Ordem de prioridade:

• Propriedades identicas:– 1. A ordem define a prioridade para as

declarações de CSS externo, sendo o último com maior grau de prioridade.

– 2. Na declaração de CSS externo e incorporado, terá prioridade o último que foi declarado.

– 3. Em declarações que envolvem CSS externo, incorporado e inline. O CSS inline terá prioridade.

Page 32: Html - CSS

HTML & CSS ETEPAMCSS

• Cor: – Hexadecimal

• h1{color: #cccccc;}– Nome da cor

• h2{color:red;}– RGB

• h1{color: rgb(255,0,0);}

Page 33: Html - CSS

HTML & CSS ETEPAMCSS

• Hacks: – Underscore Property Hack;– Star Property Hack;– Conditional Comments

Page 34: Html - CSS

HTML & CSS ETEPAMCSS

• Box Model: – Box Model (Modelo de Caixa)

é um modelo que determina como os elementos em bloco (block) relacionam suas dimensões com as dimensões dos elementos auxiliares contidos nele.

Page 35: Html - CSS

HTML & CSS ETEPAMCSS

• Box Model: – Box Model (Modelo de Caixa)

é um modelo que determina como os elementos em bloco (block) relacionam suas dimensões com as dimensões dos elementos auxiliares contidos nele.

Page 36: Html - CSS

HTML & CSS ETEPAMCSS

• Box Model: – width: largura do elemento;– height: altura do elemento;– padding: enchimento,

distância entre a borda do elemento e seu conteúdo;

– border: borda do elemento;– margin: margem, distância

entre o elemento e outro;

Page 37: Html - CSS

HTML & CSS ETEPAMCSS

• Tipos de Box Model:– Existem dois tipos de Box Model

que possuem formas diferentes de interpretar as relações dimensionais entre os elementos:•Strict (Padrão): modo padrão que

pode ser visto no Firefox e em outros browsers Gecko-Based.

•Quirks (Não-padrão): modo padrão que pode ser visto no Internet Explorer em modo quirks.

Page 38: Html - CSS

HTML & CSS ETEPAMCSS

• Box Model Strict:– No Box Model Strict, dada uma

largura e uma altura, todas as dimensões dos elementos auxiliares são somadas a elas, sendo a largura e a altura totais sempre maiores ou iguais que a largura e altura do elemento. A largura e a altura do elemento representam, por sua vez, a largura e altura do conteúdo.

Page 39: Html - CSS

HTML & CSS ETEPAMCSS

• Box Model Strict:

Page 40: Html - CSS

HTML & CSS ETEPAMCSS

• Box Model Quirks:– No Box Model Quirks , dada

uma largura, o elemento padding nas arestas RIGHT e LEFT é subtraído da largura total, gerando uma largura de conteúdo menor ou igual a largura total.

Page 41: Html - CSS

HTML & CSS ETEPAMCSS

• Box Model Quirks:

Page 42: Html - CSS

HTML & CSS ETEPAMCSS

• Propriedade display– display:inline;– display:block;– display:none;

Page 43: Html - CSS

HTML & CSS ETEPAMCSS

• Propriedades float e clear– Float:

• float:none;• float:left;• float:right;

– Clear:• clear:both;• clear:left;• clear:right;

Page 44: Html - CSS

HTML & CSS ETEPAMCSS

• Propriedade overflow– overflow:visible;– overflow:auto;– overflow:hidden;

Page 45: Html - CSS

HTML & CSS ETEPAMCSS

• Fixfloat– Quando um elemento não possue

altura definida, isto é, sem propriedade height, e possue elementos floated dentro dele como no caso de um layout com colunas, sua altura é interpretada como nula se a propriedade overflow não for especificada (sendo assumido o valor padrão overflow:visible;). Num layout padrão com Header, Middle e Footer, caso o Middle possua colunas (elementos floated), isso significa ver o Footer encostando no Header, como se o Middle não existisse.

Page 46: Html - CSS

HTML & CSS ETEPAMCSS

• Fixfloat– Para resolver esse problema, é

aplicado um conceito conhecido como fixfloat. Uma das técnicas consiste em adicionar propriedade overflow:auto; no elemento pai.

Page 47: Html - CSS

HTML & CSS ETEPAMCSS

• Fixfloat– Isso resolve o problema para quase

todos os navegadores incluindo o IE7. Infelizmente o IE6, não interpreta o overflow corretamente. No IE6, o float evitado adicionando-se uma altura qualquer que seja ao elemento pai como height:1px; e setando o overflow:visible; novamente. Então para se aplicar um fixfloat eficaz tanto no IE6 como nos outros browsers.

Page 48: Html - CSS

HTML & CSS ETEPAMCSS

• Propriedade position– position:static; (default);– position:relative;– position:absolute

Page 49: Html - CSS

HTML & CSS ETEPAMCSS

• Media Types

Page 50: Html - CSS

HTML & CSS ETEPAMCSS

• Layouts Fixos, Relativos, Fluidos Elásticos e Hybridos

Page 51: Html - CSS

HTML & CSS ETEPAMCSS

• CSS Reset

Page 52: Html - CSS

HTML & CSS ETEPAMCSS

• Text indent

Page 53: Html - CSS

HTML & CSS ETEPAMCSS

• Image replacement

Page 54: Html - CSS

HTML & CSS ETEPAMCSS

• Sprite