aboutsummaryrefslogtreecommitdiff
path: root/files/pt-br/web/css/clear/index.html
blob: 6b108c4eced6f58a947647f3b2d73e343b24a390 (plain)
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
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
---
title: clear
slug: Web/CSS/clear
tags:
  - CSS
  - CSS Positioning
  - CSS Property
  - Reference
translation_of: Web/CSS/clear
---
<div>{{CSSRef}}</div>

<p>A propriedade <strong><code>clear do</code></strong> <a href="/en-US/docs/CSS" title="CSS">CSS</a> especifica se um elemento pode ter elementos <a href="/en-US/docs/CSS/float">flutuantes</a> ao seu lado ou se devem ser movidos para abaixo dele (clear). Essa propriedade se aplica à elementos flutuantes ou não flutuantes. </p>

<div>{{EmbedInteractiveExample("pages/css/clear.html")}}</div>

<p class="hidden">O fonte desse exemplo está armazenado em um repositório no Github. Se você gostaria de contribuir com esse exemplo, por favor clone o projeto <a href="https://github.com/mdn/interactive-examples">https://github.com/mdn/interactive-examples</a> e nos envie um pull request.</p>

<p>Quando essa propriedade é aplicada em elementos não flutuantes, ele move a borda (<a href="https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Box_Model/Introduction_to_the_CSS_box_model">border edge</a>) desse elemento para a borda da margem (<a href="https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Box_Model/Introduction_to_the_CSS_box_model">margin edge</a>) de todos os elementos flutuantes relevantes. Ocorre um colapso das margens verticais dos elementos não flutuantes.</p>

<p>As margens verticais entre dois elementos flutuantes não irão sofrer esse colapso. Quando aplicada a elementos flutuantes, a borda de margem (<a href="https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Box_Model/Introduction_to_the_CSS_box_model">margin edge</a>) do elemento inferior é movida abaixo da borda de margem (<a href="https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Box_Model/Introduction_to_the_CSS_box_model">border edge</a>) de todos os elementos flutuantes relevantes. Isso afeta a posição dos elementos flutuantes posteriores, sendo que os elementos flutuantes posteriores não podem ser posicionados acima dos anteriores.</p>

<p>Os elementos flutuantes que devem ser limpos (clear) são os elementos anteriores dentro do mesmo contexto de bloco (<a href="https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Block_formatting_context">block formatting context</a>).</p>

<div class="note">
<p><strong>Nota:</strong> se um elemento possuir apenas elementos flutuantes, sua altura é zerada. Se você quiser que o mesmo seja redimensionado, de modo que contenha elementos flutuantes dentro dele, você precisa limpar(clear) seus filhos automaticamente. Isso é chamado clearfix, e uma maneira de fazê-lo é adicionando um {{cssxref("::after")}} pseudo-elemento com a propriedade <code>clear.</code></p>

<pre class="brush: css">#container::after {
  content: "";
  display: block;
  clear: both;
}
</pre>
</div>

<h2 id="Sintaxe">Sintaxe</h2>

<pre class="brush: css no-line-numbers">/* Valores chaves */
clear: none;
clear: left;
clear: right;
clear: both;
clear: inline-start;
clear: inline-end;

/* Valores globais */
clear: inherit;
clear: initial;
clear: unset;
</pre>

<h3 id="Values" name="Values">Valores</h3>

<dl>
 <dt><code>none</code></dt>
 <dd>É uma palavra-chave que indica que o elemento não foi movido para baixo para limpar os elementos flutuantes anteriores.</dd>
 <dt><code>left</code></dt>
 <dd>É uma palavra-chave que indica que o elemento foi movido para baixo para limpar os últimos flutuantes da esquerda.</dd>
 <dt><code>right</code></dt>
 <dd>É uma palavra-chave que indica que o elemento foi movido para baixo para liberar os últimos elementos flutuantes.</dd>
 <dt><code>both</code></dt>
 <dd>É uma palavra-chave que indica que o elemento será movido para baixo para limpar os elementos flutuantes do lado esquerdo e direito.</dd>
 <dt><code>inline-start</code></dt>
 <dd>É uma palavra-chave que indica que o elemento será movido para baixo para limpar os elementos flutuantes no lado inicial de seu bloco, ou seja, os da esquerda flutuam nos scripts de ltr e os da direita nos scripts de rtl.</dd>
 <dt><code>inline-end</code></dt>
 <dd>É uma palavra-chave que indica que o elemento será movido para baixo para limpar os flutuantes no final de seu bloco, os da direita nos scripts de ltr e os flutuantes da esquerda nos scripts de rtl.</dd>
</dl>

<h3 id="Sintaxe_2">Sintaxe</h3>

<pre class="syntaxbox">{{csssyntax}}</pre>

<h2 id="Examples" name="Examples">Exemplos</h2>

<h3 id="clear:_left" name="clear:_left">clear: left</h3>

<h4 id="HTML">HTML</h4>

<pre class="brush: html">&lt;div class="wrapper"&gt;
  &lt;p class="black"&gt;Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus sit amet diam. Duis mattis varius dui. Suspendisse eget dolor.&lt;/p&gt;
  &lt;p class="red"&gt;Lorem ipsum dolor sit amet, consectetuer adipiscing elit.&lt;/p&gt;
  &lt;p class="left"&gt;This paragraph clears left.&lt;/p&gt;
&lt;/div&gt;
</pre>

<h4 id="CSS">CSS</h4>

<pre class="brush: css">.wrapper{
  border:1px solid black;
  padding:10px;
}
.left {
  border: 1px solid black;
  clear: left;
}
.black {
  float: left;
  margin: 0;
  background-color: black;
  color: #fff;
  width: 20%;
}
.red {
  float: left;
  margin: 0;
  background-color: pink;
  width:20%;
}
p {
  width: 50%;
}
</pre>

<p>{{ EmbedLiveSample('clear:_left','100%','250') }}</p>

<h3 id="clear:_right" name="clear:_right">clear: right</h3>

<h4 id="HTML_2">HTML</h4>

<pre class="brush: html">&lt;div class="wrapper"&gt;
  &lt;p class="black"&gt;Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus sit amet diam. Duis mattis varius dui. Suspendisse eget dolor.&lt;/p&gt;
  &lt;p class="red"&gt;Lorem ipsum dolor sit amet, consectetuer adipiscing elit.&lt;/p&gt;
  &lt;p class="right"&gt;This paragraph clears right.&lt;/p&gt;
&lt;/div&gt;
</pre>

<h4 id="CSS_2">CSS</h4>

<pre class="brush: css">.wrapper{
  border:1px solid black;
  padding:10px;
}
.right {
  border: 1px solid black;
  clear: right;
}
.black {
  float: right;
  margin: 0;
  background-color: black;
  color: #fff;
  width:20%;
}
.red {
  float: right;
  margin: 0;
  background-color: pink;
  width:20%;
}
p {
  width: 50%;
}</pre>

<p>{{ EmbedLiveSample('clear:_right','100%','250') }}</p>

<h3 id="clear:_both" name="clear:_both">clear: both</h3>

<h4 id="HTML_3">HTML</h4>

<pre class="brush: html">&lt;div class="wrapper"&gt;
  &lt;p class="black"&gt;Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus sit amet diam. Duis mattis varius dui. Suspendisse eget dolor. Fusce pulvinar lacus ac dui.&lt;/p&gt;
  &lt;p class="red"&gt;Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus sit amet diam. Duis mattis varius dui. Suspendisse eget dolor.&lt;/p&gt;
  &lt;p class="both"&gt;This paragraph clears both.&lt;/p&gt;
&lt;/div&gt;
</pre>

<h4 id="CSS_3">CSS</h4>

<pre class="brush: css">.wrapper{
  border:1px solid black;
  padding:10px;
}
.both {
  border: 1px solid black;
  clear: both;
}
.black {
  float: left;
  margin: 0;
  background-color: black;
  color: #fff;
  width:20%;
}
.red {
  float: right;
  margin: 0;
  background-color: pink;
  width:20%;
}
p {
  width: 45%;
}</pre>

<p>{{ EmbedLiveSample('clear:_both','100%','300') }}</p>

<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('CSS Logical Properties', '#float-clear', 'float and clear')}}</td>
   <td>{{Spec2('CSS Logical Properties')}}</td>
   <td>Adds the values <code>inline-start</code> and <code>inline-end</code></td>
  </tr>
  <tr>
   <td>{{SpecName('CSS2.1', 'visuren.html#flow-control', 'clear')}}</td>
   <td>{{Spec2('CSS2.1')}}</td>
   <td>No significant changes, though details are clarified.</td>
  </tr>
  <tr>
   <td>{{SpecName('CSS1', '#clear', 'clear')}}</td>
   <td>{{Spec2('CSS1')}}</td>
   <td>Initial definition</td>
  </tr>
 </tbody>
</table>

<p>{{cssinfo}}</p>

<h2 id="Browser_compatibility" name="Browser_compatibility">Compatibilidade dos browsers</h2>



<p>{{Compat("css.properties.clear")}}</p>

<div> </div>

<h2 id="See_also" name="See_also">Veja também</h2>

<ul>
 <li><a href="/en-US/docs/CSS/box_model" title="CSS/box_model">Box model</a></li>
</ul>