Busca

Boas práticas de Desenvolvimento com Padrões Web


O que são Media Types do CSS?

Media Types servem para direcionar um determinado CSS para um determinado tipo de meio de acesso.

06/02/2006 por Diego Eis
14 Comentários

O CSS foi feito para que pudéssemos dizer como o documento irá se apresentar ao usuário em diferentes meios de acesso. Seja ele na tela do seu monitor, na sua impressora, no seu PDA, no seu sintetizador de voz, celular, smartphone, microondas etc e etc… Não importa com qual dispositivo o usuário esteja acessando seu site, ele deve ser bem apresentado.

O W3C criou uma forma para fazermos isso com a maior facilidade. Você pode criar um CSS específico para cada tipo de meio de acesso, com a mesma facilidade que você cria um CSS para ser visto em um Desktop. Você pode personalizar um site para ser visto em um Smartphone ou até mesmo quando o visitante imprimir uma página de texto do seu site. Utilizando o caso da impressão: não é interessante para o visitante, que o menu, banners e outros elementos do site sejam impressos no papel.

Para isso, basta definir para qual tipo de media que você está dirigindo um arquivo CSS especifico. Existem dois jeitos:

1. O primeiro jeito é usado ao importar um arquivo CSS com o @import:

1
@import url("impressao.css") print;

Primeiro vem o arquivo que você quer importar, e logo depois você define para qual media ele será usado.

2. No segundo modo você usará o @media. É muito usado internamente no código CSS. Muito útil quando você quer definir apenas poucas linhas para uma media especifica:

1
2
3
@media print {
  /* Código CSS */
}

3. Neste modo você usará quando linkar o arquivo CSS no Cabeçalho do documento:

1
<link rel="stylesheet" type="text/css" media="print" href="impressao.css" />

Tipos de Medias

Na especificação você pode definir CSS para um bocado de dispositivos, veja a lista abaixo:

screen
Para computadores, PC´s. Ou algum dispositivo que tenha uma boa tela colorida.
print
Para impressoras. Muito usado para dar uma versão de impressão do site.
handheld
Para PDAs, celulares e aparelhos que geralmente tem uma tela pequena.
projection
Para projetos de apresentações. Você pode transformar seu site em uma apresentação estilo PowerPoint!
aural
Para Sintetizadores de Tela.
braille
Para dispositivos táteis. Impressionante, ahn? Um cego poder “imprimir” um artigo para poder ler onde quiser.
tv
Para televisões. A resolução da televisão é muito inferior a um monitor CRT, eles merecem um tratamento especial.
tty
Para dispositivos que usam uma grade fixa de caractéres, terminais, dispositivos portáteis, etc…

O screen agora pode ser direcionado para Smartphones, com telas bacanas como o iPhone e celulares com Android por meio das Media Queries. O handheld é largamente usado para celulares que não são smartphones, mas são celulares menores, com telas bacanas. Normalmente, estes celulares utilizam Opera Mini, o que é uma vantagem por conta da larga compatibilidade que o Opera tem com Padrões Web.

O projection foi primeiramente idealizado pelo Opera, foi conhecido também como Opera Show – para ver isso funcionando, visite o site do Opera Show com o Opera e aperte F11.

TV e TTY são pouco utilizados hoje. Quem tem uma televisão bacana em casa, consegue ter a mesma experiência de um monitor comum. Na minha opinião, não sei se ela sobrevive. A TTY talvez seja bem utilizada em nichos específicos já que é para aparelhos que tem uma tela bem limitada e que executam tarefas específicas. Talvez terminais pequenos, geralmente monocromáticos e etc. Também não tenho certeza da sua utilidade no futuro.

A idéia é dar para todos os meios de acesso uma boa experiência de utilização. O visitante pode iniciar a visitação do seu site em um smartphone ou celular, e terminar em um desktop. Não importa, ele precisa ter uma boa experiência nos dois meios.

Para ter mais detalhes:

Por Diego Eis

Diego Eis é sócio e diretor de treinamentos da Visie Padrões Web, desenvolvedor web, palestrante, microblogueiro, fotógrafo amador, pintor de gibi nas horas vagas, criador do Tableless.com.br e gosta de ouvir música.

14 Comentários

Sua opinião:

Vamos elevar o nível de discussão. Exponha sua opinião, sua crítica.



RSS dos comentários deste post
URL para Trackback

14 Comentários

Flávio Theruo Kaminisse 06/02/2006 às 08:50

Muito legal essas funcionalidades do CSS, o que me deixou mais impressionado foi a media “braille”, muito show.
Parabéns.

Henrique Pimentel 06/02/2006 às 09:53

O media Type print ja me poupou muito trabalho.
Lembro que na era pre-css, quando os browsers não tinham suporte ou quando ainda era muito pouco divulgado, eu tinha que fazer uma mega gambiarra e normalmente tinha que duplicar um monte de paginas para fazer a versão para impressão.
Ou seja o dobro de paginas somente para uma formatação diferente.
Felizmente o media print me salvou.
Vai ser realmente bem interessante quando outras midias se tornarem compatíveis e mais utilizaveis, acho q uma das primeiras que vamos aproveitar eh o PDA.
Porém acho interessante que ainda surjam mais tipos como por exemplo o Cellphone.
Podia tambem ter um seletor no CSS para resolução, isso ia quebrar um galho danado.
Abraços.

felipe tonello 06/02/2006 às 10:59

poxa.. fiquei impressionado com o braille e com o projection..
eu abri aqui no meu opera o link acima e gostei muito.. fica perfeito essas apresentações de slide…
próximo trabalho que tiver na escola vou utilizar ele hehehe

Túlio 06/02/2006 às 13:39

O projection no Opera fica bom demais. Com certeza ainda vou utilizar isso na faculdade… =D Será que da pra colocar animações em cada projeção?!?! Aih fica perfeito…

Jonatas Oliveira 06/02/2006 às 21:29

Gostei muito da explicação (Principalmente do projection no Opera), parabéns.

Acho que você se equivocou na mídia Aural, ela sintetiza o áudio através do que “lê” na tela, como você mesmo colocou logo no início do texto.

» A importância do “@media print” - Rodrigo Muniz + Tecnologia, Webstandards, CSS, Internet, Web design, Cultura, Fotografia, Música... 06/02/2006 às 23:49

[...] Com certeza você já passou por algum tipo de aperto na hora de imprimir alguma página da internet. É aquele trauma que te faz visualizar a impressão umas 300 vezes antes de imprimir, afinal cartucho de impressora não é das coisas mais baratas. Se você passou por isso, imagine os usuários mais leigos, que às vezes nem sabem visualizar a impressão de páginas? O Diego publicou para os desenvolvedores no Tableless um artigo explicativo sobre os chamados Media Types do CSS. Mas como nem todo mundo que deveria ter um estilo para impressão sequer sabe que ele existe nem que é tão importante, o aguardado IE7 pode dar uma amenizada no trauma na hora da impressão e talvez agora os web designers darão mais importância ao @media print. O programa da Microsoft promete um monte de melhorias na hora de configurar as páginas para impressão, uma interface mais intuitiva na hora de cortar conteúdo indesejado e configurar melhor a escala de páginas. Coisa que o Firefox já faz bem, só precisa melhorar um pouco em questão de interface, aliás a maioria das novidade que se vê no IE7 todo mundo já usa no Firefox há algum tempo. [...]

CosmeWeb 08/02/2006 às 12:12

O da TV eu nunca tinha ouvido falar, bem interessante…

João Vagner 08/02/2006 às 14:20

Tentei com o F11 no firefox e neca… oO

Mas é uma informação VALIOSA, eu mesmo não sábia =)

Fiquei também muito impressionante com a @media braille :-) Acessibilidade acima de tudo, muito bom!

Abraços

Henrique Vicente 13/02/2006 às 17:22

Bem,
só uma dúvida…
Se eu não coloco o tv,handheld, braille… “Eles” vão procurar o mais amigável para ele? Por exemplo, TV = display. Handheld = não vai colocar nada ou vai usar o print. Braille = print?

marcelo 13/03/2007 às 19:53

o media print se aplica apenas para a impressão via browser? … minha dúvida é se por exemplo eu linkar o css com o media print para um arquivo de um sistema, que gera um pdf pra impressão ele atende pra impressão do pdf também…

Matheus de Oliveira 27/09/2007 às 14:57

Faltou citar o “embossed”, que pelo que entendi não tem muita diferença do “braille”, e do “all” que serve pra todos, além de uma outra forma de informar a media, que é dentro da tag style, acho que funfa em todo browser, não?

Mas no resto está um ótimo artigo, falou tudo que era essencial, parabéns…

F1 - laboratório multimídia» Blog Archive » Testando diferentes modos de visualização no Dreamweaver 22/10/2007 às 11:54

[...] boa notícia é que se pode visualizar outros modos (media types) do CSS pelo [...]

Weslaine Freitas 30/09/2008 às 19:41

Alguém já conseguiu imprimir o background-color de uma div sem alterar na mão as propriedades do browser??? Alguma propriedade no media print para tal????

Grata,
Weslaine