<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Como Criar Sites &#124; Aprenda grátis como fazer seu site &#187; folha de estilo</title>
	<atom:link href="http://www.comocriarsites.com/tag/folha-de-estilo/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.comocriarsites.com</link>
	<description>Aprenda a criar sites, html e manhas para fazer seu site.</description>
	<lastBuildDate>Wed, 06 Jan 2010 12:51:19 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Estilo Float (CSS Style Float)</title>
		<link>http://www.comocriarsites.com/html-css/estilo-float-css-style-float/</link>
		<comments>http://www.comocriarsites.com/html-css/estilo-float-css-style-float/#comments</comments>
		<pubDate>Wed, 08 Apr 2009 02:04:26 +0000</pubDate>
		<dc:creator>Raoni Novellino</dc:creator>
				<category><![CDATA[HTML CSS]]></category>
		<category><![CDATA[after]]></category>
		<category><![CDATA[clearfix]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[estilo]]></category>
		<category><![CDATA[float]]></category>
		<category><![CDATA[folha de estilo]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[style]]></category>

		<guid isPermaLink="false">http://www.comocriarsites.com/?p=115</guid>
		<description><![CDATA[Vamos ver como funciona o estilo float (style float) e algumas dicas para que ele possa ser utilizado corretamente. Ele serve para dizer onde o elemento vai &#8220;flutuar&#8221; na página. Isso é usado em elementos do tipo bloco (block &#8211; como &#60;div&#62;, &#60;p&#62;, &#60;img&#62; e outros) para faze-lo ficar exatamente onde você quiser, sem precisar [...]]]></description>
			<content:encoded><![CDATA[<p><span style="font-size: xx-large;">V</span>amos ver como funciona o estilo <em>float</em> (<em>style float</em>) e algumas dicas para que ele possa ser utilizado corretamente. Ele serve para dizer onde o elemento vai &#8220;flutuar&#8221; na página. Isso é usado em elementos do tipo bloco (<em>block</em> &#8211; como <em><strong>&lt;div&gt;</strong></em>, <em><strong>&lt;p&gt;</strong></em>, <em><strong>&lt;img&gt;</strong></em> e outros) para faze-lo ficar exatamente onde você quiser, sem precisar usar tabela (<em>tableless</em>). Para uma renderização correta do elemento com o estilo <em>float</em>, o mesmo deve ter especificado a sua largura (<em>width</em>).</p>
<h3>Valores para o Estilo <em>Float</em></h3>
<p>Os valores para o estilo <em>float</em> podem ser:</p>
<h4>none</h4>
<p>- Esse é o valor definido para o elemento não &#8220;flutuar&#8221; para lado algum. Você não precisa colocar esse estilo se você desejar esse valor.</p>
<h4>left</h4>
<p>- Esse valor faz o elemento &#8220;flutuar&#8221; a esquerda, deixando qualquer outro elemento a direita desse elemento.</p>
<h4>right</h4>
<p>- Esse valor faz o elemento &#8220;flutuar&#8221; a direita, deixando qualquer outro elemento a esquerda desse elemento.</p>
<p>Existem outros valores para o estilo <em>float</em>, mas normalmente são irrelevantes e quase nunca, se não nunca, serão usados, pelo menos eu nunca vi.</p>
<p>O estilo <em>float</em> faz o elemento se sobrepor aos outros elemento da página. Ele também faz o elemento meio que flutuar na página, podendo gerar alguns erros no fluxo dos elementos da página. Nós veremos algumas dicas para corrigir esses erros no final desse post.</p>
<h3>Exemplificando o Estilo <em>Float</em></h3>
<p>Agora vou colocar um exemplo do código para o estilo <em>float</em>. Para ver os exemplos abaixo funcionando entre em <a title="Exemplo de Estilo Float" href="http://www.comocriarsites.com/exemplos/estilo_float.html">Exemplo de Estilo Float</a>. Primeiro um exemplo do elemento sem o <em>float</em>.</p>
<h4>Sem Float</h4>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;div style="width: 200px; min-height: 50px; border: 1px solid black;"&gt;
	&lt;div style="width: 50px; height: 50px; background-color: blue;"&gt;&lt;/div&gt;
	&lt;div style="width: 50px; height: 50px; background-color: red;"&gt;&lt;/div&gt;
&lt;/div&gt;</pre>
</div>
<p>Esse é o exemplo para você ver como seria exibido os elementos sem o estilo <em>float</em>. Ele desenha um retângulo com dois quadrados dentro, só que esses quadrados estão exibidos um embaixo do outro.</p>
<h4>Float Left</h4>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;div style="width: 200px; height: 50px; border: 1px solid black;"&gt;
	&lt;div style="float: left; width: 50px; height: 50px; background-color: blue;"&gt;&lt;/div&gt;
	&lt;div style="float: left; width: 50px; height: 50px; background-color: red;"&gt;&lt;/div&gt;
&lt;/div&gt;</pre>
</div>
<p>Nesse exemplo temos o mesmo retângulo, só que os quadrados internos dele estão com o estilo <em>float: left</em> e vemos que não há quebra de linha entre os elementos e todos estão alinhados a esquerda.</p>
<h4>Float Right</h4>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;div style="width: 200px; height: 50px; border: 1px solid black;"&gt;
	&lt;div style="float: right; width: 50px; height: 50px; background-color: blue;"&gt;&lt;/div&gt;
	&lt;div style="float: right; width: 50px; height: 50px; background-color: red;"&gt;&lt;/div&gt;
&lt;/div&gt;</pre>
</div>
<p>Nesse exemplo temos quase a mesma coisa do exemplo passado, só que os elementos internos estão alinhados a direita, porque temos o estilo <em>float: right</em> nos elementos internos.</p>
<h4>Float Left-Right</h4>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;div style="width: 200px; height: 50px; border: 1px solid black;"&gt;
	&lt;div style="float: left; width: 50px; height: 50px; background-color: blue;"&gt;&lt;/div&gt;
	&lt;div style="float: right; width: 50px; height: 50px; background-color: red;"&gt;&lt;/div&gt;
&lt;/div&gt;</pre>
</div>
<p>Esse exemplo é para mostrar como podemos colocar na mesma linha dois elementos sem usar tabela, para isso usamos em um elemento o estilo <em>float: left</em> e no outro o estilo <em>float: right</em>.</p>
<h2>Dicas para Resolver Problemas com o Estilo <em>Float</em></h2>
<p>Umas das propriedades de elementos que utilizam o estilo <em>float</em> é que ele não ajusta a altura do elemento pai de acordo com a sua altura. Veja esses exemplos funcionando em <a title="Exemplo Estilo Float Manha" href="http://www.comocriarsites.com/exemplos/estilo_float_manha.html">Exemplo Estilo Float Manha</a>. E vamos ao código:</p>
<h3>Float sem Ajuste de Altura</h3>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;div style="width: 200px; height: 50px; border: 1px solid black; background-color: yellow;"&gt;
	&lt;div style="float: left; width: 50px; height: 50px; background-color: blue;"&gt;&lt;/div&gt;
	&lt;div style="float: left; width: 50px; height: 75px; background-color: red;"&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style="width: 200px; height: 50px; border: 1px solid black; background-color: gray;"&gt;&lt;/div&gt;</pre>
</div>
<p>Nesse exemplo temos um elemento pai, que é um retângulo, com dois elementos filhos dentro, mas um dos elementos filhos está com a altura (height) maior que a do elemento pai, e como esse elemento filho está com o estilo <em>float</em> definido, o elemento pai não vai cobrir todo o elemento filho, então o elemento filho vai ficar uma parte fora do elemento pai. Logo embaixo existe outro elemento que deveria ficar após a altura total do elemento mais alto dos elementos anteriores a ele, só que não acontece, e o elemento filho acima, que tem altura maior, fica sobre o elemento que está mais abaixo no esquema.</p>
<h3>Float com Ajuste de Altura por Estilo Clear</h3>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;div style="width: 200px; min-height: 50px; border: 1px solid black; background-color: yellow;"&gt;
	&lt;div style="float: left; width: 50px; height: 50px; background-color: blue;"&gt;&lt;/div&gt;
	&lt;div style="float: left; width: 50px; height: 75px; background-color: red;"&gt;&lt;/div&gt;
	&lt;div style="clear: both;"&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style="width: 200px; height: 50px; border: 1px solid black; background-color: gray;"&gt;&lt;/div&gt;</pre>
</div>
<p>Para corrigir o ajuste de altura, temos algumas técnicas, mas a técnica exemplificada foi a de limpar (<em>clear</em>) o estilo <em>float</em> no final do elemento pai, para ser ajustada a altura dele corretamente. Isso normalmente é feito colocando em uma tag <em><strong>&lt;div&gt;</strong></em> o estilo <em>clear: both</em>. Você pode também criar uma classe com o estilo <em>clear: both</em> e atribuir essa classe a um elemento sempre que você precisar limpar o <em>float</em>.</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>div.limpar {
	clear: both;
}

&lt;div class="limpar"&gt;&lt;/div&gt;</pre>
</div>
<p>Para saber mais sobre o estilo <em>clear</em> acesse <a title="Estilo Clear (CSS Style Clear)" href="http://www.comocriarsites.com/html-css/estilo-clear-css-style-clear/">Estilo Clear (CSS Style Clear)</a>.</p>
<p>Se você colocar o <strong><em>&lt;div&gt;</em></strong> com o estilo <em>clear: both</em> após o fechamento do elemento pai, o próximo elemento vai ficar corretamente posicionado, mas o elemento pai ainda vai ficar com a altura errada.</p>
<h3>Float com Ajuste de Altura por Estilo Overflow</h3>
<p>Outro ajuste para fixar a altura correta é colocar o estilo <em>overflow: auto</em> no elemento pai. Ele vai se ajustar automaticamente a altura dos elemento filhos. Mas essa técnica não é muito interessante já que se você quiser utilizar o estilo <em>overflow</em> do elemento pai para algum outro propósito não vai poder.</p>
<p>Se você quiser saber mais sobre o estilo <em>overflow</em> acesse <a title="Estilo Overflow (CSS Style Overflow)" href="http://www.comocriarsites.com/html-css/estilo-overflow-css-style-overflow/">Estilo Overflow (CSS Style Overflow)</a>.</p>
<h3>Float com Ajuste de Altura por Pseudo Elemento <em>After</em></h3>
<p>Existe uma técnica que chama mais atenção por ser teoricamente melhor, porém é um pouco mais complexa, que é a técnica chamada <em>clearfix</em>, que consiste em fazer o <em>clear</em> com o pseudo elemento <em>after</em>, para os navegadores que tem esse pseudo elemento, e para o IE antigo, que não suporta o pseudo elemento <em>after</em>, fazer com que o elemento pai tenha a propriedade <em><strong>hasLayout</strong></em>. Para o elemento ter a propriedade <em><strong>hasLayout</strong></em> basta colocar o estilo <em>zoom: 1</em> nele.</p>
<p>Vamos ao código:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;style type="text/css"&gt;

.clearfix {display: inline-block;} /* isso serve para IE/Mac */

.clearfix:after {
	content: " ";
	display: block;
	height: 0;
	clear: both;
	font-size: 0;
	visibility: hidden;
}

* html .clearfix { zoom: 1; }
.clearfix { display: block; }

&lt;/style&gt;

&lt;div style="width: 200px; min-height: 50px; border: 1px solid black; background-color: yellow;" class="clearfix"&gt;
	&lt;div style="float: left; width: 50px; height: 50px; background-color: blue;"&gt;&lt;/div&gt;
	&lt;div style="float: left; width: 50px; height: 75px; background-color: red;"&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style="width: 200px; height: 50px; border: 1px solid black; background-color: gray;"&gt;&lt;/div&gt;</pre>
</div>
<p>Como pode ver no código acima, a técnica consiste em aplicar uma classe que tenha o pseudo elemento <em>after</em>, no elemento pai dos elementos que irão &#8220;flutuar&#8221; na página. O pseudo elemento <em>after</em> coloca um espaço logo após o elemento pai, mas coloca ele invisível e com a propriedade <em>clear: both</em>. Os elementos de cima da folha de estilos servem para ajeitar esse bug no IE/Mac e os de baixo servem para antigas versões do IE.<em></em></p>
<p>Para saber mais sobre o pseudo elemento <em>after</em> entre em <a title="CSS Pseudo Elementos: First-Letter, First-Line, Before e After" href="http://www.comocriarsites.com/html-css/css-pseudo-elementos-first-letter-first-line-before-e-after/">CSS Pseudo Elementos: First-Letter, First-Line, Before e After</a>.</p>
<h3>Outras Técnicas</h3>
<p>Uma outra técnica menos abordada é dar ao elemento pai o estilo <em>display: table</em>, mas acho que essa técnica não é muito boa, porque utiliza um estilo que nós podemos querer utilizar para outros fins. Essa técnica é abordada no site <a title="CSS: Truques para dominar a propriedade Float" href="http://www.richardbarros.com.br/blog/css/css-truques-para-dominar-a-propriedade-float">CSS: Truques para dominar a propriedade Float</a>, mas sem muitas explicações de por que essa técnica funciona.</p>
<p>Para saber mais sobre as outras técnicas de posicionamento, leia <a title="CSS float: considerações, dicas e macetes para bons layouts na web" href="http://www.desenvolvimentoparaweb.com/css/css-float-consideracoes-dicas-e-macetes-para-bons-layouts-na-web/">CSS float: considerações, dicas e macetes para bons layouts na web</a> e <a title="How To Clear Floats Without Structural Markup" href="http://www.positioniseverything.net/easyclearing.html">How To Clear Floats Without Structural Markup</a>.</p>
<p>E para corrigir algum bug do IE com relação a margem colocada na mesma direção qual o elemento flutue, veja <a title="Bug Fix: IE Double Margin Float Bug" href="http://www.cssnewbie.com/double-margin-float-bug/">Bug Fix: IE Double Margin Float Bug</a>.</p>
<p>Para criação e hospedagem profissional de websites e sistemas, acesse <a title="criação e hospedagem profissional de websites e sistemas panasoft" href="http://www.panasoft.com.br">Panasoft</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.comocriarsites.com/html-css/estilo-float-css-style-float/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Estilo Overflow (CSS Style Overflow)</title>
		<link>http://www.comocriarsites.com/html-css/estilo-overflow-css-style-overflow/</link>
		<comments>http://www.comocriarsites.com/html-css/estilo-overflow-css-style-overflow/#comments</comments>
		<pubDate>Sat, 28 Mar 2009 22:40:04 +0000</pubDate>
		<dc:creator>Raoni Novellino</dc:creator>
				<category><![CDATA[HTML CSS]]></category>
		<category><![CDATA[criar site]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[estilo]]></category>
		<category><![CDATA[fazer site]]></category>
		<category><![CDATA[folha de estilo]]></category>
		<category><![CDATA[hidden]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[overflow]]></category>
		<category><![CDATA[scroll]]></category>
		<category><![CDATA[style]]></category>
		<category><![CDATA[visible]]></category>

		<guid isPermaLink="false">http://www.comocriarsites.com/?p=121</guid>
		<description><![CDATA[O estilo overflow do CSS define como o elemento irá se comportar caso o seu conteúdo ultrapasse a sua altura ou largura. O estilo overflow do CSS pode ter os seguintes valores.
Visible
- Esse é o valor padrão, o elemento não faz nada e o conteúdo que ultrapassar o elemento sera escrito fora dele.
Hidden
- Todo conteúdo [...]]]></description>
			<content:encoded><![CDATA[<p><span style="font-size: xx-large;">O</span> estilo <em>overflow</em> do CSS define como o elemento irá se comportar caso o seu conteúdo ultrapasse a sua altura ou largura. O estilo <em>overflow</em> do CSS pode ter os seguintes valores.</p>
<h4>Visible</h4>
<p>- Esse é o valor padrão, o elemento não faz nada e o conteúdo que ultrapassar o elemento sera escrito fora dele.</p>
<h4>Hidden</h4>
<p>- Todo conteúdo que ultrapassar o elemento com esse valor no estilo <em>overflow</em> ficará escondido, e o elemento não terá barra de rolagem para visualização do resto do conteúdo.</p>
<h4>Scroll</h4>
<p>- Com esse valor o elemento sempre vai ter barra de rolagem, não importa se tenha ou não conteúdo passando de seus limites. Se você quer que o elemento tenha barra de rolagem, você normalmente não usa <em>overflow: scroll</em> e sim <em>overflow: auto</em>.</p>
<h4>Auto</h4>
<p>- O elemento exibirá barra de rolagem somente se o seu conteúdo ultrapassar seus limites.</p>
<h2>Overflow x/y</h2>
<p>Ainda podemos especificar mais quais limites queremos que o <em>overflow</em> atue, utilizando <em>overflow-x</em>, para o <em>overflow</em> valer somente para a barra e o limite horizontal, e <em>overflow-y</em>, para o <em>overflow</em> valer somente para a barra e o limite vertical.</p>
<h2>Exemplos de <em>Overflow</em></h2>
<p>Vamos exemplificar alguns casos de <em>overflow</em> para o melhor entendimento.</p>
<h3>Elemento sem <em>Overflow</em></h3>
<div style="border: 1px solid black; width: 100px; height: 50px;">Aqui vamos escrever até ver o funcionamento do overflow</div>
<p>O código do exemplo acima é:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;div style="border: 1px solid black; width: 100px; height: 50px;"&gt;Aqui vamos escrever até ver o funcionamento do overflow&lt;/div&gt;</pre>
</div>
<p>Você pode verificar que o tamanho do elemento <strong><em>&lt;div&gt;</em></strong> não mudou, a sua borda mostra isso, mas o texto ultrapassou o limite vertical do elemento. Esse é o comportamento <em>overflow</em> padrão, que é como se colocasse o estilo <em>overflow: visible</em>.</p>
<h3>Elemento com <em>Overflow Hidden</em></h3>
<div style="border: 1px solid black; overflow: hidden; width: 100px; height: 50px;">Aqui vamos escrever até ver o funcionamento do overflow</div>
<p>O código do exemplo acima é:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;div style="border: 1px solid black; overflow: hidden; width: 100px; height: 50px;"&gt;Aqui vamos escrever até ver o funcionamento do overflow&lt;/div&gt;</pre>
</div>
<p>O tamanho do elemento <strong><em>&lt;div&gt;</em></strong> também não mudou, mas o texto dentro dele não ultrapassou a borda do elemento, e todo o conteúdo do elemento que ultrapassou o limite vertical dele ficou escondido.</p>
<h3>Elemento com <em>Overflow Scroll</em></h3>
<div style="border: 1px solid black; overflow: scroll; width: 130px; height: 75px;">Aqui vamos escrever até ver o funcionamento do overflow</div>
<p>O código do exemplo acima é:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;div style="border: 1px solid black; overflow: scroll; width: 130px; height: 75px;"&gt;Aqui vamos escrever até ver o funcionamento do overflow&lt;/div&gt;</pre>
</div>
<p>O elemento <strong><em>&lt;div&gt;</em></strong> ficou com barras de rolagem vertical e horizontal, mesmo sem a necessidade da barra horizontal.</p>
<h3>Elemento com <em>Overflow Auto</em></h3>
<div style="border: 1px solid black; overflow: auto; width: 130px; height: 75px;">Aqui vamos escrever até ver o funcionamento do overflow Aqui vamos escrever até ver o funcionamento do overflow</div>
<p>O código do exemplo acima é:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;div style="border: 1px solid black; overflow: auto; width: 130px; height: 75px;"&gt;Aqui vamos escrever até ver o funcionamento do overflow Aqui vamos escrever até ver o funcionamento do overflow&lt;/div&gt;</pre>
</div>
<p>O elemento <strong><em>&lt;div&gt;</em></strong> ficou somente com barra de rolagem vertical e horizontal como não precisou da barra de rolagem horizontal ele não exibe.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.comocriarsites.com/html-css/estilo-overflow-css-style-overflow/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Serviço de Validação de CSS</title>
		<link>http://www.comocriarsites.com/html-css/servico-de-validacao-de-css/</link>
		<comments>http://www.comocriarsites.com/html-css/servico-de-validacao-de-css/#comments</comments>
		<pubDate>Sat, 07 Mar 2009 07:40:44 +0000</pubDate>
		<dc:creator>Raoni Novellino</dc:creator>
				<category><![CDATA[HTML CSS]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[CSS validation]]></category>
		<category><![CDATA[folha de estilo]]></category>
		<category><![CDATA[style sheets]]></category>
		<category><![CDATA[validar CSS]]></category>

		<guid isPermaLink="false">http://www.comocriarsites.com/?p=84</guid>
		<description><![CDATA[Existe um site que tem um serviço de validação do CSS, você pode enviar o arquivo, colocar o caminho do arquivo caso o arquivo esteja na internet ou colar o seu código CSS para ele validar.
O site é: Serviço de Validação de CSS do W3C.
Entre no site e teste, ele mostra alguns relatórios que podem [...]]]></description>
			<content:encoded><![CDATA[<p><span style="font-size: xx-large;">E</span>xiste um site que tem um serviço de validação do CSS, você pode enviar o arquivo, colocar o caminho do arquivo caso o arquivo esteja na internet ou colar o seu código CSS para ele validar.</p>
<p>O site é: <a href="http://jigsaw.w3.org/css-validator/">Serviço de Validação de CSS do W3C</a>.</p>
<p>Entre no site e teste, ele mostra alguns relatórios que podem ajudar a melhorar a sua folha de estilos (CSS).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.comocriarsites.com/html-css/servico-de-validacao-de-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Entendendo CSS (folhas de estilo): Cascading Style Sheet &#8211; Parte 1</title>
		<link>http://www.comocriarsites.com/html-css/entendendo-css-folhas-de-estilo-cascading-style-sheet-parte-1/</link>
		<comments>http://www.comocriarsites.com/html-css/entendendo-css-folhas-de-estilo-cascading-style-sheet-parte-1/#comments</comments>
		<pubDate>Sat, 07 Mar 2009 07:19:20 +0000</pubDate>
		<dc:creator>Raoni Novellino</dc:creator>
				<category><![CDATA[HTML CSS]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[folha de estilo]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[style]]></category>
		<category><![CDATA[style sheets]]></category>

		<guid isPermaLink="false">http://www.comocriarsites.com/?p=70</guid>
		<description><![CDATA[Para entender como uma folha de estilo em cascata (CSS ou Cascading Style Sheet) funciona, você deve estar em sintonia com a sua sintaxe. A sintaxe do CSS não é difícil de entender e aqui vou explicar o básico para você poder ler ou criar uma folha de estilos (CSS).
O Básico
Para definir uma regra CSS [...]]]></description>
			<content:encoded><![CDATA[<p><span style="font-size: xx-large;">P</span>ara entender como uma folha de estilo em cascata (CSS ou Cascading Style Sheet) funciona, você deve estar em sintonia com a sua sintaxe. A sintaxe do CSS não é difícil de entender e aqui vou explicar o básico para você poder ler ou criar uma folha de estilos (CSS).</p>
<h2>O Básico</h2>
<p>Para definir uma regra CSS você deve colocar-lo de alguma forma no documento. Veremos três formas de colocar um estilo em um documento abaixo:</p>
<h4>Colocando o atributo <em>style</em> na tag desejada</h4>
<p>Esse método é o mais simples e serve se você vai fazer uma coisa simples, pois colocando desse jeito em algo grande e complexo, fica difícil de dar manutenção ao que for fazer. Um exemplo:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;div style="color: #aaaaaa; background-color: #0000ff;"&gt;exemplo de estilo com a atributo style&lt;/div&gt;</pre>
</div>
<p>Isso simplesmente diz que essa tag <em><strong>&lt;div&gt;</strong></em> vai ser exibida com a cor da fonte do texto que estiver dentro dela em cinza (#aaaaaa) e com a cor de fundo em azul (#0000ff).</p>
<h4>Utilizando a TAG <em><strong>&lt;style&gt;<br />
</strong></em></h4>
<p>Diferente de usar um atributo, você pode usar a tag <em><strong>style</strong></em> e dentro dela definir vários estilos. Exemplo:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;style<code><strong></strong><strong><strong></strong></strong></code> type="text/css"&gt;
div {
	color: #aaaaaa;
	background-color: #0000ff;
}
&lt;/style&gt;

&lt;div&gt;exemplo de estilo usando a tag style&lt;/div&gt;</pre>
</div>
<p>Essa tag <em><strong>&lt;style&gt;</strong></em> normalmente é definida no cabeçalho do documento HTML (entre as tags <em><strong>&lt;head&gt;</strong></em> e <em><strong>&lt;/head&gt;</strong></em>).</p>
<p>Esse estilo é definido igual ao do exemplo anterior, cor do texto em cinza e cor do fundo em azul, mas nesse caso, eu estou definindo para TODAS as tags <em><strong>&lt;div&gt;</strong></em>. Isso pode ser feito para qualquer tag do documento, definindo assim estilos para todas as tag daquele tipo naquele documento.</p>
<p>Esse modo é mais utilizado que o primeiro em sites grandes, para atualizar o site fica mais fácil, pois só preciso atualizar o CSS no início do arquivo. O problema se meu site tiver muito arquivos, preciso atualizar todos os arquivo, mas para evitar isso, temos a terceira opção para colocar CSS no seu site.</p>
<h4>Utilizando CSS em um arquivo separado</h4>
<p>Podemos também utilizar o CSS em um arquivo separado, normalmente com a extensão .css. Nesse arquivo não precisamos colocar nenhuma tag, é só começar a definir os estilos. Exemplo:</p>
<h5>Arquivo estilo.css:</h5>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>div {
	color: #aaaaaa;
	background-color: #0000ff;
}</pre>
</div>
<p>A tag eu tenho que colocar é a<em><strong> </strong><strong>&lt;link&gt;</strong></em>, para adicionar no meu documento o arquivo de estilos. Essa tag sempre deve ficar no cabeçalho do arquivo (entre as tags <em><strong>&lt;head&gt;</strong></em> e <em><strong>&lt;/head&gt;</strong></em>).</p>
<h5>Documento HTML:</h5>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;html&gt;
&lt;head&gt;
	&lt;link rel="stylesheet" type="text/css" href="estilo.css"&gt;
&lt;/head&gt;
&lt;body&gt;
	&lt;div&gt;exemplo de estilo usando uma arquivo separado&lt;/div&gt;
&lt;/body&gt;
&lt;/html</pre>
</div>
<p>A tag <em><strong>&lt;link&gt;</strong></em> serve praticamente para poder usar um arquivo de estilos separado, na teoria essa tag serve para outras coisas também, se você quiser saber mais sobre ela entre em: <a href="http://www.w3schools.com/TAGS/tag_link.asp">http://www.w3schools.com/TAGS/tag_link.asp</a>. O atributo <em>rel</em> define a relação do arquivo chamado com o documento, no caso <em>stylesheet</em>, que é o nosso arquivo de folha de estilos. O atributo <em>type</em> indica o tipo MIME do arquivo. Se quiser saber o que é MIME acesse: <a href="http://pt.wikipedia.org/wiki/MIME">http://pt.wikipedia.org/wiki/MIME</a>. E por último e mais importante, o atributo <em>href</em> diz onde está o seu arquivo de estilo, isto é, a URL para o arquivo.</p>
<p>Esse método é muito bom, pois podemos chamar um único arquivo de folha de estilo por vários documentos, então dar manutenção fica muito fácil.</p>
<p>Agora que já sabemos como colocar CSS no nosso documento, podemos ver a segunda parte, que mostra como agrupar os estilos por classe e por identificador. Entre no link <a title="entendendo css folha de estilo cascading style sheet parte 2" href="http://www.comocriarsites.com/html-css/entendendo-css-folhas-de-estilo-cascading-style-sheet-parte-2/">Entendendo CSS (folhas de estilo): Cascading Style Sheet &#8211; Parte 2</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.comocriarsites.com/html-css/entendendo-css-folhas-de-estilo-cascading-style-sheet-parte-1/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Entendendo CSS (folhas de estilo): Cascading Style Sheet &#8211; Parte 2</title>
		<link>http://www.comocriarsites.com/html-css/entendendo-css-folhas-de-estilo-cascading-style-sheet-parte-2/</link>
		<comments>http://www.comocriarsites.com/html-css/entendendo-css-folhas-de-estilo-cascading-style-sheet-parte-2/#comments</comments>
		<pubDate>Sat, 07 Mar 2009 07:17:16 +0000</pubDate>
		<dc:creator>Raoni Novellino</dc:creator>
				<category><![CDATA[HTML CSS]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[folha de estilo]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[style]]></category>
		<category><![CDATA[style sheets]]></category>

		<guid isPermaLink="false">http://www.comocriarsites.com/?p=73</guid>
		<description><![CDATA[Na primeira parte vimos como podemos colocar um estilo no nosso documento HTML. Nessa parte vamos ver um pouco de sintaxe do CSS e como utilizar. Para ver a primeira parte entre em: Entendendo CSS (folhas de estilo): Cascading Style Sheet &#8211; Parte 1.
Atribuindo Estilo a Todas as Tags de um Tipo
Para atribuir um estilo [...]]]></description>
			<content:encoded><![CDATA[<p><span style="font-size: xx-large;">N</span>a primeira parte vimos como podemos colocar um estilo no nosso documento HTML. Nessa parte vamos ver um pouco de sintaxe do CSS e como utilizar. Para ver a primeira parte entre em: <a title="entendendo css folha de estilo cascading style sheet parte 1" href="http://www.comocriarsites.com/html-css/entendendo-css-folhas-de-estilo-cascading-style-sheet-parte-1/">Entendendo CSS (folhas de estilo): Cascading Style Sheet &#8211; Parte 1</a>.</p>
<h3>Atribuindo Estilo a Todas as Tags de um Tipo</h3>
<p>Para atribuir um estilo a todas as tags de um tipo, você deve utilizar a sintaxe padrão do CSS. Exemplo:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>body {
	background-color: #00ff00;
}
div {
	font-family: tahoma, verdana, arial;
}</pre>
</div>
<p>No exemplo acima eu estou dizendo que a tag <em><strong>&lt;body&gt;</strong></em> do documento vai ficar com o fundo de cor verde (#00ff00) e todas as tags <em><strong>&lt;div&gt;</strong></em> do documento vão ficar com a fonte <em>tahoma</em>, <em>verdana</em> ou <em>arial</em>.</p>
<p>Eu posso fazer isso para qualquer tipo de tag, mas isso me deixa pouca flexibilidade para certo casos, em que eu queira um <em><strong>&lt;div&gt;</strong></em> com outra fonte, ou outra tag com outra especificação do que foi passado no estilo para ela, para isso podemos definir classes de estilo para as tags.</p>
<h3>Definindo classes de estilo (CSS) para tags</h3>
<p>Para definir uma classe de estilo para uma tag, deve-se colocar o nome da tag, seguindo de um ponto (.) e seguindo do nome da classe. Esse nome da classe pode ser qualquer nome. Exemplo:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>div.item {
	background-color: #00ff00;
	padding-top: 10px;
}
div.lateral {
	background-color: #ff0000;
	padding-left: 5px;
	padding-right: 5px;
	float: right;
}</pre>
</div>
<p>Quando uma classe de estilo é definida para uma tag HTML, voce deve utilizar o atributo <em>class</em> da tag para dizer que aquela tag deve ser exibida com o estilo referente a aquela classe. Exemplo:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;div class="item"&gt;Meu fundo é verde&lt;/div&gt;
&lt;div class="lateral"&gt;meu fundo é vermelho&lt;/div&gt;</pre>
</div>
<p>Cada uma das tags <strong><em>&lt;div&gt;</em></strong> acima terá um estilo diferente, segundo as classes especificadas mais acima.</p>
<p>Esse método é bom porque nós podemos saber em quais tags podem ficar os estilos definidos e esse método é muito usado quando se faz um código com o conceito <em>tableless</em> (sem tabelas), o que normalmente utiliza muito a tag <em><strong>&lt;div&gt;</strong></em>.</p>
<h3>Generalizando as Classes de Estilo (CSS) para Qualquer tag</h3>
<p>Mais uma característica do CSS é que eu posso definir uma classe para qualquer tag. Para isso nós colocamos somente o ponto seguido do nome da classe. Exemplo:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>.menuItem {
	width: 320px;
	height: 240px;
}
.caixaEsquerda {
	width: 100px;
	float: left;
	padding-top: 20px;
}</pre>
</div>
<p>Isso faz com que qualquer elemento com o atributo <em>class</em> definido com o nome da classe acima (<em>menuItem</em> ou <em>caixaEsquerda</em>) ficará com o estilo que ele apresenta. Exemplo:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;table class="caixaEsquerda"&gt;
	&lt;tr&gt;
		&lt;td&gt;Essa tabela vai ficar na esquerda, com largura 100 pixels e 20 pixels afastada do elemento acima dela&lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;

&lt;div class="menuItem"&gt;Esse div tem largura de 320 pixels e altura de 240 pixels&lt;/div&gt;</pre>
</div>
<p>Esse tipo de classe é boa para qualquer tipo de site, pois você define como vão ser as partes do seu site sem antes saber qual a tag que ficará com cada parte. Mas isso faz com que você não tenha muito controle ao o que se aplica onde, diferente do método acima deste.</p>
<h3>Colocando Estilo via Identificador Único</h3>
<p>Outra forma de colocar estilo é utilizando um identificador único para um único elemento. A sintaxe no CSS é colocar um jogo-da-velha (#) seguido pelo identificador único do elemento. Exemplo:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>#miolo {
	float: left;
	width: 400px;
	padding-left: 20px;
	padding-top: 20px;
}

#topo {
	width: 100%;
	height: 80px;
	background-image: url("img/bgimagemtopo.png");
}</pre>
</div>
<p>Para fazer um elemento receber o estilo definido por um identificador único, devemos atribuir a esse elemento um atributo <em>id</em>. O identificador desse elemento deve ser único, não podendo se repetir em outro elemento. Exemplo:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>&lt;div id="topo"&gt;Esse é o topo do site, recebe o estilo de topo, com uma imagem de fundo&lt;/div&gt;
&lt;div id="miolo"&gt;Esse é o miolo do site, recebe o estilo de miolo&lt;/div&gt;</pre>
</div>
<p>Isso faz com que o elemento receba o estilo definido pelo seu identificador. Esse método é útil quando quero definir padrões para sites, tipo o que é topo, laterais (esquerda e direita), menu (pode ser horizontal ou vertical) e rodapé. Pode ser usada em outras coisas também, nunca se limite.</p>
<p>Agora que você já sabe como colocar estilos de todas as formas no seu site, vou mostrar o que é uma pseudoclasse.</p>
<h3>Pseudoclasses</h3>
<p>Pseudoclasses são classes de estilo que definem certos aspectos de um elemento HTML. A pseudoclasse que eu vou mostrar é a da tag <em><strong>&lt;a&gt;</strong></em>, que faz um link de uma página para outra. Vou mostrar o código e depois explicar o funcionamento. Para ver outras pseudoclasses, entre em: <a href="http://www.w3schools.com/CSS/css_pseudo_classes.asp">http://www.w3schools.com/CSS/css_pseudo_classes.asp</a> ou  <a href="http://www.maujor.com/tutorial/pseetut.php">http://www.maujor.com/tutorial/pseetut.php</a>.</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>a:link { text-decoration: none; color: 0000ff; font-weight: bold; }
a:visited { text-decoration: none; color: 00ffff; font-weight: bold; }
a:hover { text-decoration: underline; color: 00ff00; font-weight: bold; }
a:active { text-decoration: none; color: ff0000; font-weight: bold; }</pre>
</div>
<p>As pseudosclasses da tag <em><strong>&lt;a&gt;</strong></em> são:</p>
<h4>link:</h4>
<p>- Estilo que define como o link vai ficar normalmente, quando não foi clicado e quando o mouse não está sobre ele, nesse caso, vai ficar sem sublinhado, com a cor azul e em negrito.</p>
<h4>visited:</h4>
<p>- Estilo que define como o link vai ficar quando ele já foi clicado ou visitado e quando o mouse não está sobre ele, nesse caso, vai ficar sem sublinhado, na cor azul claro e em negrito.</p>
<h4>hover:</h4>
<p>- Estilo que define como o link vai ficar quando o mouse estiver sobre ele, que nesse caso, vai ficar sublinhado, na cor verde e em negrito.</p>
<h4>active:</h4>
<p>- Estilo que define como o link vai ficar quando o link estiver aberto (ativo), nesse caso, vai ficar sem sublinhado, na cor vermelha e em negrito.</p>
<p>As pseudoclasses da tag <em><strong>&lt;a&gt;</strong></em> devem aparece na ordem mostrada no exemplo, se ficarem em outra ordem podem não funcionar. Um link no site sem estilo nenhuma aparece sublinhado, e o estilo <em>text-decoration</em> serve para dizer como deve aparecer esse sublinhado, no nosso caso está com o valor <em>none</em>, quer dizer que vai aparecer sem sublinhado, mas ele pode ser <em>underline</em>, <em>overline</em>, <em>line-through</em> ou <em>blink</em>.</p>
<p>Esses estilos definidos desse jeito afetarão todas as tags <em><strong>&lt;a&gt;</strong></em> do documento, então você pode definir classes e pseudoclasses assim:</p>
<div style="background-color: #FFFFFF; overflow-x: auto;">
<pre>a.item:link { text-decoration: none; color: 0000ff; font-weight: bold; }
a.item:visited { text-decoration: none; color: 00ffff; font-weight: bold; }
a.item:hover { text-decoration: underline; color: 00ff00; font-weight: bold; }
a.item:active { text-decoration: none; color: ff0000; font-weight: bold; }</pre>
</div>
<p>Desse modo só vai afetar as tags <em><strong>&lt;a&gt;</strong></em> que tiverem o atributo <em>class</em> com o valor da classe de estilo, no caso do exemplo, o valor <em>item</em>.</p>
<p>Se gostou, achou algum erro ou tem alguma dúvida, comente.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.comocriarsites.com/html-css/entendendo-css-folhas-de-estilo-cascading-style-sheet-parte-2/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
