1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
|
---
title: Consultas de média
slug: Web/CSS/Consultas_de_media
tags:
- CSS
- Consultas de Média
- Consultas de média CSS3
- Desenho Adaptável
- Referencia
- Visão Geral
translation_of: Web/CSS/Media_Queries
---
<div>{{CSSRef}}</div>
<p><strong>Consultas de média</strong> permitem adaptar o seu site ou aplicação de acordo com diferentes características ou parâmetros dos dispositivos utilizados.</p>
<p>São um elemento chave de <a href="/en-US/docs/Web/Apps/Progressive/Responsive">desenho adaptável </a>. Por exemplo, uma consulta de média pode reduzir o tamanho do texto em dispositivos pequenos, aumentar o espaço entre parágrafos quando a página é visualizada em modo de paisagem, ou ampliar os botões nos ecrãs táteis.</p>
<p>Em <a href="/en-US/docs/Web/CSS">CSS</a>, utiliza-se a <a href="/en-US/docs/Web/CSS/At-rule">regra "at"</a> {{cssxref("@media")}} para aplicar, condicionalmente, parte de uma folha de estilos com base no resultado de uma consulta de média. E utiliza-se {{cssxref("@import")}} para aplicar, condicionalmente, uma folha de estilos inteira.</p>
<h3 id="Consultas_de_média_em_HTML">Consultas de média em HTML</h3>
<p>Em <a href="/en-US/docs/Web/HTML">HTML</a>, as consultas de média podem-se aplicar a vários elementos:</p>
<ul>
<li>No atributo {{htmlattrxref("media", "link")}} do elemento {{HTMLElement("link")}}. O valor deste atributo define os média a que se deve aplicar o recurso ligado (tipicamente, este recurso é um documento CSS).</li>
<li>No atributo {{htmlattrxref("media", "source")}} do elemento {{HTMLElement("source")}} (apenas é válido quando este elemento está aninhado dentro de um elemento {{HTMLElement("picture")}}.). O valor deste atributo define quais os média que podem utilizar a imagem associada ao elemento.</li>
<li>No atributo {{htmlattrxref("media", "style")}} do elemento {{HTMLElement("style")}}. O valor deste atributo define os média a que são aplicados os estilos.</li>
</ul>
<h3 id="Consultas_de_média_em_JavaScript">Consultas de média em JavaScript</h3>
<p>Em <a href="/en-US/docs/Web/JavaScript">JavaScript</a>, pode-se usar o método {{domxref("Window.matchMedia()")}} para verificar se a janela possui as características definidas na consulta de média. Também se pode utilizar {{domxref("MediaQueryList.addListener()")}} para gerar eventos sempre que houver mudanças no resultado da consulta de média. Com estas funcionalidades, o seu site ou aplicação pode responder a mudanças na configuração, orientação ou estado do dispositivo.</p>
<p>Pode aprender mais sobre utilização programática das consultas de média no artigo <a href="/en-US/docs/Web/CSS/Media_Queries/Testing_media_queries">Testar consultas de média</a>.</p>
<h2 id="Referências">Referências</h2>
<h3 id="Regras_at">Regras "at"</h3>
<div class="index">
<ul>
<li>{{cssxref("@import")}}</li>
<li>{{cssxref("@media")}}</li>
</ul>
</div>
<h2 id="Guias">Guias</h2>
<dl>
<dt><a href="/en-US/docs/Web/CSS/Media_Queries/Using_media_queries">Utilizar consultas de média</a></dt>
<dd>Introdução às consultas de média, a sua sintaxe, os operadores e funcionalidades utilizadas para construir as expressões das consultas de média.</dd>
<dt><a href="/en-US/docs/Web/CSS/Media_Queries/Testing_media_queries">Testar consultas de média programaticamente</a></dt>
<dd>Descrição de como utilizar consultas de média no código JavaScript code para determinar o estado do dispositivo, e como instalar <em>listeners</em> que notificam o código quando o resultado das consultas muda (por exemplo, quando o utilizador roda o ecrã ou redimensiona a janela do navegador).</dd>
<dt><a href="/en-US/docs/Web/CSS/Media_Queries/Using_Media_Queries_for_Accessibility">Utilizar Consultas de média para Acessibilidade</a></dt>
<dd>Este artigo explica de que forma as consultas de média podem ajudar os utilizadores a compreender melhor o seu site.</dd>
</dl>
<h2 id="Especificações">Especificações</h2>
<table class="standard-table">
<thead>
<tr>
<th scope="col">Specification</th>
<th scope="col">Status</th>
<th scope="col">Comment</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{SpecName('CSS5 Media Queries')}}</td>
<td>{{Spec2('CSS5 Media Queries')}}</td>
<td> </td>
</tr>
<tr>
<td>{{SpecName('CSS3 Conditional')}}</td>
<td>{{Spec2('CSS3 Conditional')}}</td>
<td> </td>
</tr>
<tr>
<td>{{SpecName('CSS4 Media Queries')}}</td>
<td>{{Spec2('CSS4 Media Queries')}}</td>
<td> </td>
</tr>
<tr>
<td>{{SpecName('CSS3 Media Queries')}}</td>
<td>{{Spec2('CSS3 Media Queries')}}</td>
<td> </td>
</tr>
<tr>
<td>{{SpecName('CSS2.1', 'media.html')}}</td>
<td>{{Spec2('CSS2.1')}}</td>
<td>Definição inicial</td>
</tr>
</tbody>
</table>
<h2 id="Compatibilidade_com_navegadores">Compatibilidade com navegadores</h2>
<h3 id="media_rule">@media rule</h3>
<div class="hidden">A tabela de compatibilidade nesta página é gerada a partir de dados estruturados. Se gostaria de contribuir para estes dados, visite o repositório <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> e envie-nos um <em>pull request</em>.</div>
<p>{{Compat("css.at-rules.media")}}</p>
<h2 id="Ver_também">Ver também</h2>
<ul>
<li>A regra {{cssxref("@supports")}} permite aplicar estilos em função da compatibilidade do navegador com diversas tecnologias CSS.</li>
</ul>
|