<?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>ueb3 &#187; CSS</title>
	<atom:link href="http://ueb3.com.br/blog/tag/css/feed/" rel="self" type="application/rss+xml" />
	<link>http://ueb3.com.br/blog</link>
	<description>blog by douglas l. figueiredo</description>
	<lastBuildDate>Thu, 25 Aug 2011 01:28:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Centralizar imagem na horizontal e vertical com CSS</title>
		<link>http://ueb3.com.br/blog/centralizar-imagem-na-horizontal-e-vertical-com-css/</link>
		<comments>http://ueb3.com.br/blog/centralizar-imagem-na-horizontal-e-vertical-com-css/#comments</comments>
		<pubDate>Wed, 03 Nov 2010 21:19:05 +0000</pubDate>
		<dc:creator>Douglas L. Figueiredo</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[alinhamento]]></category>
		<category><![CDATA[alinhar]]></category>
		<category><![CDATA[centralizar]]></category>
		<category><![CDATA[horizontal]]></category>
		<category><![CDATA[imagem]]></category>
		<category><![CDATA[img]]></category>
		<category><![CDATA[vertical]]></category>

		<guid isPermaLink="false">http://ueb3.com.br/blog/?p=675</guid>
		<description><![CDATA[Imagine a seguinte situação: você precisa centralizar uma imagem dentro de um box maior que a imagem e com dimensões atribuídas. Caso você insira a imagem via CSS, é fácil deixá-la centralizada, mas isso não é possível quando estamos utilizando a tag < img >. Você poderia simplesmente fazer o seguinte: Aplicar display:block à imagem [...]]]></description>
			<content:encoded><![CDATA[<p>Imagine a seguinte situação: você precisa centralizar uma imagem dentro de um box maior que a imagem e com dimensões atribuídas. Caso você insira a imagem via CSS, é fácil deixá-la centralizada, mas isso não é possível quando estamos utilizando a tag < img >.</p>
<p>Você poderia simplesmente fazer o seguinte:</p>
<p>Aplicar display:block  à imagem<br />
Definir as margens esquerda e do topo para a imagem, deixando-a centralizada dentro do box.</p>
<p>Mas o grande problema é que você pode ter imagens no formato retrato e paisagem. Imagine uma galeria de fotos com fotos de diferentes tamanhos, você teria que definir um CSS para cada imagem para que elas ficassem centralizadas.</p>
<h2>A solução</h2>
<p>Centralizar imagens na horizontal não é difícil, se a imagem está com seu comportamento padrão de display:inline, então um simples text-align:center já resolveria o problema e funcionaria bem em todos os browsers.</p>
<p>Agora para centralizar imagens na vertical, em browsers modernos, uma simples solução é atribuir display: table-cell; e vertical-align: middle ao elemento container. Só que como nessa vida nem tudo são flores, em browsers como o IE7 e inferiores essa técnica não funciona.</p>
<p>Para o IE7, a solução é criar uma espécie de linha, tendo como altura a altura do container e utilizar novamente vertical-align: middle. A propriedade line-height infelizmente não pode ser usada para conseguir esse efeito, uma vez que ela não funciona corretamente no IE7/Win na presença de imagens. Utilizar também uma fonte com algum tamanho grande (sem especificar line-height) é problemático, porque o tamanho da caixa gerada é ligeiramente maior que o tamanho da fonte.</p>
<p>Felizmente o IE7 tem suporte parcial a propriedade display: inline-block. Se um elemento vazio que possua a propriedade inline-block (por exemplo um < span >) é adicionado dentro do elemento container e é atribuído ao mesmo height:100% e vertical-align: middle, então ela permite justamente conseguir o que queremos.</p>
<p>A solução utiliza das propriedades display: table-cell e uma tag < span > extra com display: inline-block. Funciona em todos os browsers, inclusive no Internet Explorer.</p>
<h2>Código CSS</h2>
<p>No exemplo foi utilizado um elemento container com a classe box e o código para o IE será descrito aqui através de comentarios condicionais:</p>
<pre class="brush: php">
&amp;lt;style type=&amp;quot;text/css&amp;quot;&amp;gt;
.box {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    width: ...;
    height: ...;
}
.box * {
    vertical-align: middle;
}
&amp;lt;/style&amp;gt;

&amp;lt;!--[if lt IE 8]&amp;gt;
&amp;lt;style type=&amp;quot;text/css&amp;quot;&amp;gt;
.box span {
    display: inline-block;
    height: 100%;
}
&amp;lt;/style&amp;gt;
&amp;lt;![endif]--&amp;gt;
</pre>
<p>A marcação HTML é muito simples e é descrita logo abaixo:</p>
<pre class="brush: php">
&amp;lt;div class=&amp;quot;box&amp;quot;&amp;gt;
&amp;lt;span&amp;gt;&amp;lt;/span&amp;gt;
&amp;lt;img src=&amp;quot;&amp;quot; alt=&amp;quot;&amp;quot; title=&amp;quot;&amp;quot; /&amp;gt;
&amp;lt;/div&amp;gt;
</pre>
<p>Vejam o <a href="http://imasters.com.br/artigo/16195" target="_blank">exemplo em funciomanento</a> no post original do iMasters.<br/><br />
Essa técnica foi originalmente desenvolvida pelo desenvolvedor Bruno, veja mais informações no <a href="http://www.brunildo.org/test/img_center.html" target="_blank">post original</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://ueb3.com.br/blog/centralizar-imagem-na-horizontal-e-vertical-com-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dica para organizar seu código CSS</title>
		<link>http://ueb3.com.br/blog/organizar-codigo-css/</link>
		<comments>http://ueb3.com.br/blog/organizar-codigo-css/#comments</comments>
		<pubDate>Mon, 26 Apr 2010 23:07:50 +0000</pubDate>
		<dc:creator>Douglas L. Figueiredo</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[código]]></category>
		<category><![CDATA[organizador]]></category>

		<guid isPermaLink="false">http://ueb3.com.br/blog/?p=611</guid>
		<description><![CDATA[Hoje venho apresentar mais uma dica para todos vocês! Trata-se do StyleNeat, um organizador para seus arquivos CSS. Ele pega seu código e o reorganiza, mantendo um padrão na escrita, facilitando muito a compreensão de consulta de quem não escreveu o código, e até mesmo para quem escreveu e precisa consultá-lo depois de algum tempo. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://styleneat.com/" target="_blank"><img class="size-full wp-image-612 alignright" title="styleneat" src="http://ueb3.com.br/blog/wp-content/uploads/2010/04/styleneat.png" alt="StyleNeat - Organizador CSS" width="198" height="37" /></a>Hoje venho apresentar mais uma dica para todos vocês!<br />
Trata-se do StyleNeat, um organizador para seus arquivos CSS. Ele pega seu código e o reorganiza, mantendo um padrão na escrita, facilitando muito a compreensão de consulta de quem não escreveu o código, e até mesmo para quem escreveu e precisa consultá-lo depois de algum tempo.</p>
<p>Para aqueles que quiserem fazer um teste, o link é: <a href="http://styleneat.com/" target="_blank">http://styleneat.com/</a></p>
<p><em>Lembrando que seu código não sofre alterações, mantendo a mesma idéia aplicada por você quando o escreveu.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://ueb3.com.br/blog/organizar-codigo-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS3 Generator &#8211; Desvendando o CSS3</title>
		<link>http://ueb3.com.br/blog/css3-generator-desvendando-o-css3/</link>
		<comments>http://ueb3.com.br/blog/css3-generator-desvendando-o-css3/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 22:45:02 +0000</pubDate>
		<dc:creator>Douglas L. Figueiredo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[css 3]]></category>
		<category><![CDATA[css3]]></category>
		<category><![CDATA[css3 generator]]></category>

		<guid isPermaLink="false">http://ueb3.com.br/blog/?p=570</guid>
		<description><![CDATA[Olá a todos! Depois de alguns dias sem postar, estou aqui novamente&#8230;não, não abandonei o blog =) Simplesmente a vida anda corrida demais&#8230;.mas vamos ao que interessa! Vi uma dica no twitter do @pinceladasdaweb à alguns dias, e decidi compartilhar com vocês. Trata-se do CSS3 Generator. Você escolhe o efeito CSS3 que quer, e ele [...]]]></description>
			<content:encoded><![CDATA[<p>Olá a todos!</p>
<p>Depois de alguns dias sem postar, estou aqui novamente&#8230;não, não abandonei o blog =)<br />
Simplesmente a vida anda corrida demais&#8230;.mas vamos ao que interessa!</p>
<p>Vi uma dica no twitter do <a href="http://twitter.com/pinceladasdaweb" target="_blank">@pinceladasdaweb</a> à alguns dias, e decidi compartilhar com vocês. Trata-se do <a href="http://css3generator.com/" target="_blank">CSS3 Generator</a>. Você escolhe o efeito CSS3 que quer, e ele lhe dá o exemplo, com opção de edição, e o código para aplicar tal efeito. Uma mão na roda para dar início aos efeitos CSS3.</p>
<p>Clique na imagem ou <a href="http://css3generator.com/" target="_blank">acesse o link para conhecer o CSS3 Gererator</a>&#8230;.este vale a pena ir para os favoritos <img src='http://ueb3.com.br/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><a href="http://css3generator.com/" target="_blank"><img class="aligncenter size-full wp-image-571" title="css3generator" src="http://ueb3.com.br/blog/wp-content/uploads/2010/04/css3generator.jpg" alt="CSS3 Generator" width="505" height="194" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://ueb3.com.br/blog/css3-generator-desvendando-o-css3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10 exemplos do poder do CSS3</title>
		<link>http://ueb3.com.br/blog/10-exemplos-do-poder-do-css3/</link>
		<comments>http://ueb3.com.br/blog/10-exemplos-do-poder-do-css3/#comments</comments>
		<pubDate>Mon, 22 Mar 2010 23:44:03 +0000</pubDate>
		<dc:creator>Douglas L. Figueiredo</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Tendências]]></category>
		<category><![CDATA[css3]]></category>
		<category><![CDATA[novidades]]></category>

		<guid isPermaLink="false">http://ueb3.com.br/blog/?p=536</guid>
		<description><![CDATA[O CSS3 ainda pode ser considerado um embrião, porém muitos designers e programadores já descobriram ótimas funcionalidades com ele&#8230;neste artigo quero apresentar-lhes 10 exemplos do bom uso do CSS3, e com os dias, conforme for possível, postar dicas de como utilizar bem o CSS3. Infelizmente não são todos os navegadores que dão suporte às novas [...]]]></description>
			<content:encoded><![CDATA[<p>O CSS3 ainda pode ser considerado um embrião, porém muitos designers e programadores já descobriram ótimas funcionalidades com ele&#8230;neste artigo quero apresentar-lhes 10 exemplos do bom uso do CSS3, e com os dias, conforme for possível, postar dicas de como utilizar bem o CSS3. Infelizmente não são todos os navegadores que dão suporte às novas propriedades do CSS3, e o pior deles nosso inimigo querido IE.</p>
<p>Vejam abaixo alguns exemplos com os links para as respectivas páginas:</p>
<h2>Bolhas de discursos</h2>
<p><a href="http://nicolasgallagher.com/demo/pure-css-speech-bubbles/bubbles.html" target="_blank"><img class="aligncenter size-full wp-image-538" title="pure-css-bubbles" src="http://ueb3.com.br/blog/wp-content/uploads/2010/03/pure-css-bubbles.jpg" alt="" width="594" height="300" /></a><br />
Fonte: <a href="http://nicolasgallagher.com/demo/pure-css-speech-bubbles/bubbles.html" target="_blank">http://nicolasgallagher.com/demo/pure-css-speech-bubbles/bubbles.html</a></p>
<h2>Efeitos fantáticos para botões com CSS3 e RGBA</h2>
<p><a href="http://www.zurb.com/article/266/super-awesome-buttons-with-css3-and-rgba" target="_blank"><img class="aligncenter size-full wp-image-539" title="rgba-css3-buttons" src="http://ueb3.com.br/blog/wp-content/uploads/2010/03/rgba-css3-buttons.png" alt="" width="594" height="236" /></a><br />
Fonte: <a href="http://www.zurb.com/article/266/super-awesome-buttons-with-css3-and-rgba" target="_blank">http://www.zurb.com/article/266/super-awesome-buttons-with-css3-and-rgba</a></p>
<h2>Moldura em imagens com CSS3</h2>
<p><a href="http://www.change.org/actions/view/tell_the_senate_protect_polar_bears_from_global_warming" target="_blank"><img class="aligncenter size-full wp-image-540" title="classy-csss3-photo-frame" src="http://ueb3.com.br/blog/wp-content/uploads/2010/03/classy-csss3-photo-frame.jpg" alt="" width="594" height="200" /></a><br />
Fonte: <a href="http://www.change.org/actions/view/tell_the_senate_protect_polar_bears_from_global_warming" target="_blank">http://www.change.org/actions/view/tell_the_senate_protect_polar_bears_from_global_warming</a></p>
<h2>Como transformar suas imagens com estilo polaroid</h2>
<p><a href="http://www.zurb.com/article/305/easily-turn-your-images-into-polaroids-wi" target="_blank"><img class="aligncenter size-full wp-image-541" title="css3-polaroids" src="http://ueb3.com.br/blog/wp-content/uploads/2010/03/css3-polaroids.png" alt="" width="594" height="313" /></a><br />
Fonte: <a href="http://www.zurb.com/article/305/easily-turn-your-images-into-polaroids-wi" target="_blank">http://www.zurb.com/article/305/easily-turn-your-images-into-polaroids-wi</a></p>
<h2>Dicas de campos de formulários (apenas com CSS3)</h2>
<p><a href="http://www.skyrocketlabs.com/articles/css3-web-form-hints.php" target="_blank"><img class="aligncenter size-full wp-image-542" title="fancy-web-form-css3" src="http://ueb3.com.br/blog/wp-content/uploads/2010/03/fancy-web-form-css3.png" alt="" width="594" height="225" /></a><br />
Fonte: <a href="http://www.skyrocketlabs.com/articles/css3-web-form-hints.php" target="_blank">http://www.skyrocketlabs.com/articles/css3-web-form-hints.php</a></p>
<h2>CSS3 Drop Down Menu</h2>
<p><a href="http://www.webdesignerwall.com/tutorials/css3-dropdown-menu/" target="_blank"><img class="aligncenter size-full wp-image-543" title="css3-dropdown-menu" src="http://ueb3.com.br/blog/wp-content/uploads/2010/03/css3-dropdown-menu.png" alt="" width="594" height="195" /></a><br />
Fonte: <a href="http://www.webdesignerwall.com/tutorials/css3-dropdown-menu/" target="_blank">http://www.webdesignerwall.com/tutorials/css3-dropdown-menu/</a></p>
<h2>Explicando os CSS3 selectors</h2>
<p><a href="http://www.456bereastreet.com/archive/200601/css_3_selectors_explained/" target="_blank"><img class="aligncenter size-full wp-image-545" title="css3-selectors" src="http://ueb3.com.br/blog/wp-content/uploads/2010/03/css3-selectors.png" alt="" width="594" height="403" /></a><br />
Fonte: <a href="http://www.456bereastreet.com/archive/200601/css_3_selectors_explained/" target="_blank">http://www.456bereastreet.com/archive/200601/css_3_selectors_explained/</a></p>
<h2>Recriando a interface do Mac OSX com CSS3</h2>
<p><a href="http://www.css3.info/wp-content/uploads/2007/08/colormoduletest.html" target="_blank"><img class="aligncenter size-full wp-image-546" title="osx" src="http://ueb3.com.br/blog/wp-content/uploads/2010/03/osx.png" alt="" width="594" height="392" /></a><br />
Fonte: <a href="http://www.css3.info/wp-content/uploads/2007/08/colormoduletest.html" target="_blank">http://www.css3.info/wp-content/uploads/2007/08/colormoduletest.html</a></p>
<h2>Tipografia: efeito em textos</h2>
<p><a href="http://acrisdesign.com/2010/03/letterpress-text-effect-using-photoshop-and-css/" target="_blank"><img class="aligncenter size-full wp-image-547" title="letterpress" src="http://ueb3.com.br/blog/wp-content/uploads/2010/03/letterpress.jpg" alt="" width="535" height="250" /></a><br />
Fonte: <a href="http://acrisdesign.com/2010/03/letterpress-text-effect-using-photoshop-and-css/" target="_blank">http://acrisdesign.com/2010/03/letterpress-text-effect-using-photoshop-and-css/</a></p>
<h2>Criando um visualizador de fotos com efeito polaroid com jQuery e CSS3</h2>
<p><a href="http://www.marcofolio.net/webdesign/creating_a_polaroid_photo_viewer_with_css3_and_jquery.html" target="_blank"><img class="aligncenter size-full wp-image-548" title="polaroid" src="http://ueb3.com.br/blog/wp-content/uploads/2010/03/polaroid.png" alt="" width="594" height="435" /></a><br />
Fonte: <a href="http://www.marcofolio.net/webdesign/creating_a_polaroid_photo_viewer_with_css3_and_jquery.html" target="_blank">http://www.marcofolio.net/webdesign/creating_a_polaroid_photo_viewer_with_css3_and_jquery.html</a></p>
<blockquote>
<p style="text-align: center;"><strong>Conhece outros exemplos com CSS3? Deixe nos comentários <img src='http://ueb3.com.br/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </strong></p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://ueb3.com.br/blog/10-exemplos-do-poder-do-css3/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Por que tanto ódio ao IE6?</title>
		<link>http://ueb3.com.br/blog/por-que-tanto-odio-ao-ie6/</link>
		<comments>http://ueb3.com.br/blog/por-que-tanto-odio-ao-ie6/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 12:18:29 +0000</pubDate>
		<dc:creator>Douglas L. Figueiredo</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Humor da internet]]></category>
		<category><![CDATA[Navegadores/Browsers]]></category>
		<category><![CDATA[fail]]></category>
		<category><![CDATA[ie6]]></category>

		<guid isPermaLink="false">http://ueb3.com.br/blog/?p=526</guid>
		<description><![CDATA[Veja pequeno exemplo nas ilustrações abaixo O que você me diz agora? hehe]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;">Veja pequeno exemplo nas ilustrações abaixo <img src='http://ueb3.com.br/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p style="text-align: center;"><a href="http://ueb3.com.br/blog/wp-content/uploads/2010/02/cssie6.jpg"><img class="aligncenter size-full wp-image-527" title="cssie6" src="http://ueb3.com.br/blog/wp-content/uploads/2010/02/cssie6.jpg" alt="" width="455" height="943" /></a>O que você me diz agora? hehe</p>
]]></content:encoded>
			<wfw:commentRss>http://ueb3.com.br/blog/por-que-tanto-odio-ao-ie6/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Não “otimize” seu código</title>
		<link>http://ueb3.com.br/blog/nao-%e2%80%9cotimize%e2%80%9d-seu-codigo/</link>
		<comments>http://ueb3.com.br/blog/nao-%e2%80%9cotimize%e2%80%9d-seu-codigo/#comments</comments>
		<pubDate>Wed, 16 Sep 2009 19:35:15 +0000</pubDate>
		<dc:creator>Douglas L. Figueiredo</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[WebStandards]]></category>
		<category><![CDATA[otimização]]></category>
		<category><![CDATA[padrão]]></category>
		<category><![CDATA[padrões]]></category>
		<category><![CDATA[W3C]]></category>

		<guid isPermaLink="false">http://ueb3.com.br/?p=187</guid>
		<description><![CDATA[Quando fazíamos sites com tabelas, o grande problema era a quantidade de código que escrevíamos. Naquele tempo – 1996, 97, 98 – tínhamos outros pontos que precisavam de uma atenção maior. A conexão era lerda para todo mundo e isso dificultava um bocado as coisas. Por isso, fazer um site pesado era fora de cogitação. [...]]]></description>
			<content:encoded><![CDATA[<p>Quando fazíamos sites com tabelas, o grande problema era a quantidade de código que escrevíamos. Naquele tempo – 1996, 97, 98 – tínhamos outros pontos que precisavam de uma atenção maior. A conexão era lerda para todo mundo e isso dificultava um bocado as coisas. Por isso, fazer um site pesado era fora de cogitação. Ficávamos “mendigando” cada byte para que o site ficasse milésimos de segundo mais rápido.</p>
<p>O código era o grande problema. A quantidade de código interferia diretamente na performance do site. E isso fez com que os desenvolvedores encontrassem saídas não muito agradáveis.</p>
<p>Era comum fazer códigos como o de baixo:</p>
<div>
<table border="0">
<tbody>
<tr>
<td>
<pre>1
2
3
4
5
6
7
8
9
10</pre>
</td>
<td>
<pre style="font-family:monospace;">&lt;table&gt;
 &lt;tr&gt;
   &lt;th&gt;Produto&lt;/th&gt;
   &lt;th&gt;Preço&lt;/th&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
   &lt;td&gt;Tênis&lt;/td&gt;
   &lt;td&gt;R$230&lt;/td&gt;
 &lt;/tr&gt;
&lt;/table&gt;</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Se transformarem em verdadeiros monstros:</p>
<div>
<div>
<pre style="font-family:monospace;">&lt;table&gt;&lt;tr&gt;&lt;th&gt;Produto&lt;/th&gt;&lt;th&gt;Preço&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Tênis&lt;/td&gt;&lt;td&gt;R$230&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</pre>
</div>
</div>
<p>Isso tudo para economizar alguns bytes, que dependendo do site, significavam teras e teras de banda por mês. Naquele tempo, fazer isso era totalmente justificável. Precisávamos de alguma forma diminuir esse código para que o site ficasse mais rápido para o usuário e as requisições não sobrecarregassem o servidor.</p>
<p>Hoje isso é totalmente dispensável.</p>
<p>Aprendemos a utilizar o CSS e sabemos escrever HTML semântico.<br />
A utilização dos Padrões trazem uma série de vantagens, e uma grande parte dessas vantagens são por causa da diminuição do código. Com o desenvolvimento de camadas e principalmente por causa do uso do CSS, não precisamos mais “otimizar” o código.</p>
<p>Mas parece que os desenvolvedores gostam de coisas complicadas. Esse mal costume de otimização de código ainda existe, e hoje querem otimizar o CSS. Eu acho totalmente inútil. O CSS foi feito para controlar o visual do site inteiro. Ele tirou a responsabilidade de formatação que colocávamos no HTML. Seu trabalho é exclusivamente esse: controlar o visual e diagramação do site.<br />
É normal ele ficar grande, enorme, bizarro! Sim, haverão alguns casos que o tamanho superará mais de 1000, 2000, 3000, 4000 linhas.<br />
Dá para evitar? Claro que dá! Pense simples. <a href="http://www.tableless.com.br/modulando-o-css" target="_blank">Module os arquivos</a>. Faça um planejamento. Mas NUNCA faça com que um CSS escrito assim:</p>
<div>
<table border="0">
<tbody>
<tr>
<td>
<pre>1
2
3
4
5
6
7</pre>
</td>
<td>
<pre style="font-family:monospace;">div <span style="color:#00aa00;">{</span>
 <span style="color:#000000;font-weight:bold;">padding</span><span style="color:#00aa00;">:</span> <span style="color:#993333;">10px</span><span style="color:#00aa00;">;</span>
 <span style="color:#000000;font-weight:bold;">border</span><span style="color:#00aa00;">:</span> <span style="color:#993333;">1px</span> <span style="color:#993333;">solid</span> <span style="color:#cc00cc;">#CCC</span><span style="color:#00aa00;">;</span>
 <span style="color:#000000;font-weight:bold;">width</span><span style="color:#00aa00;">:</span> <span style="color:#993333;">485px</span><span style="color:#00aa00;">;</span>
 <span style="color:#000000;font-weight:bold;">height</span><span style="color:#00aa00;">:</span> <span style="color:#993333;">37px</span><span style="color:#00aa00;">;</span>
 <span style="color:#000000;font-weight:bold;">background</span><span style="color:#00aa00;">:</span> <span style="color:#cc00cc;">#EEE</span><span style="color:#00aa00;">;</span>
<span style="color:#00aa00;">}</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Fique assim:</p>
<div>
<table border="0">
<tbody>
<tr>
<td>
<pre>1</pre>
</td>
<td>
<pre style="font-family:monospace;">div<span style="color:#00aa00;">{</span><span style="color:#000000;font-weight:bold;">padding</span><span style="color:#00aa00;">:</span><span style="color:#993333;">10px</span><span style="color:#00aa00;">;</span>border<span style="color:#00aa00;">:</span><span style="color:#993333;">1px</span> <span style="color:#993333;">solid</span> <span style="color:#cc00cc;">#CCC</span><span style="color:#00aa00;">;</span>width<span style="color:#00aa00;">:</span><span style="color:#993333;">485px</span><span style="color:#00aa00;">;</span>height<span style="color:#00aa00;">:</span><span style="color:#993333;">37px</span><span style="color:#00aa00;">;</span>background<span style="color:#00aa00;">:</span><span style="color:#cc00cc;">#EEE</span><span style="color:#00aa00;">}</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Tenha dó do seu próximo e tenha dó de você mesmo.</p>
<p>Se você escreve o código de acordo com os Padrões, já economizou código suficiente. Não prejudique a manutenção do site por conta dessa neura. Escreva código legível!</p>
<p>Há outro ponto que devemos levar em consideração: imagine que o site pese 40Kb. Estes 40Kb são compostos por 20Kb de CSS e 20Kb de HTML. O CSS tem uma característica interessante: ele é cacheado pelo browser quando visitante entra no site.<br />
Na primeira visita do usuário ele baixará 40Kb de uma vez. Já na segunda visita ele baixará apenas 20Kb relativos ao HTML. Ele não precisará baixar os 20Kb de CSS porque o arquivo já está cacheado pelo browser.</p>
<p>Não “otimize” seu código CSS, nem seu código HTML. Faça apenas com Padrões Web e siga categoricamente a semântica. É a melhor otimização que você pode conseguir.</p>
<p>O Leonardo Caineli <a href="http://leonardocaineli.com.br/dicas-para-otimizar-seu-css/" target="_blank">escreveu um artigo sobre isso</a>. Claro, discordo da opinião dele.</p>
<p><strong>[update]</strong>Depois do post o pessoal chamou a atenção para essa prática em empresas grandes. Notei que no post eu não falei nada sobre isso. Sim, concordo que essa prática, só nessa hipótese, é totalmente considerável.</p>
<p>Quando treinei a primeira equipe do Terra – da época do site laranjão, lembra-se? – a primeira coisa que eles fizeram foi converter a home, e eles ainda sim queriam colocar todo o CSS em apenas uma linha.</p>
<p>Realmente 1Kb multiplicado por milhões é coisa para caramba e não há banda que agüente. Por isso, é totalmente aceitável que sites com um porte muito grande, “otimizem” seu código. <strong>[/update]</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://ueb3.com.br/blog/nao-%e2%80%9cotimize%e2%80%9d-seu-codigo/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>O Caminho Suave para o Tableless</title>
		<link>http://ueb3.com.br/blog/o-caminho-suave-para-o-tableless/</link>
		<comments>http://ueb3.com.br/blog/o-caminho-suave-para-o-tableless/#comments</comments>
		<pubDate>Wed, 16 Sep 2009 19:25:29 +0000</pubDate>
		<dc:creator>Douglas L. Figueiredo</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Tendências]]></category>
		<category><![CDATA[WebStandards]]></category>
		<category><![CDATA[div]]></category>
		<category><![CDATA[estruturação]]></category>
		<category><![CDATA[padding]]></category>
		<category><![CDATA[tabelas]]></category>
		<category><![CDATA[tableless]]></category>
		<category><![CDATA[web standards]]></category>

		<guid isPermaLink="false">http://ueb3.com.br/?p=183</guid>
		<description><![CDATA[Retirado do Portal Tableless A maior parte dos desenvolvedores web, designers ou programadores, começaram antes do surgimento dos movimentos em prol dos padrões web, usando tabelas para montar layouts em editores WYSIWYG, e ainda hoje este método é usado na maioria dos projetos de internet. Logo, é natural que muita gente, ao começar a entender [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;"><span style="color:#888888;"><em><a href="http://www.tableless.com.br/o-caminho-suave-para-o-tableless" target="_blank">Retirado do Portal Tableless</a></em></span></p>
<p style="text-align:justify;">A maior parte dos desenvolvedores web, designers ou programadores, começaram antes do surgimento dos movimentos em prol dos padrões web, usando tabelas para montar layouts em editores <acronym title="What You See Is What You Get, Editores Visuais">WYSIWYG</acronym>, e ainda hoje este método é usado na maioria dos projetos de internet. Logo, é natural que muita gente, ao começar a entender o valor dos padrões, se pergunte como migrar do desenvolvimento “tradicional” para o desenvolvimento de código semanticamente coerente.</p>
<p style="text-align:justify;">É um caminho muito duro o que separa o desenvolvedor acostumado a editores visuais do desenvolvimento de código coerente. E é muito comum que o designer desista após uma primeira tentativa frustrada de desenvolver um website tableless, com layout CSS e XHTML validado.</p>
<p style="text-align:justify;">Por isso gostaria de propor um caminho gradual, mais suave, para aqueles que querem se aventurar pela primeira vez pelos padrões web. O princípio desse método é da recompensa. Você pode obter um grande benefício aproximando seu código dos padrões web, mesmo que não faça tudo de uma vez. Quero mostrar como você pode começar, e obter benefícios imediatos.</p>
<h3 style="text-align:justify;">Limpe seu HTML</h3>
<p style="text-align:justify;">A minha primeira recomendação é que você estude CSS. Comece pela formatação básica de fonte, cor e tamanho. Isso vai te garantir código menor e produtividade maior com pouquíssimo esforço.</p>
<p style="text-align:justify;">Assim, ao criar um item de menu, você vai evitar códigos como este:</p>
<pre style="text-align:justify;">&lt;a href="parceiros.asp"&gt;&lt;font
face="Arial, Helvetica, Sans-serif" size="2"
color="#FF3300"&gt;&lt;b&gt;Parceiros&lt;/b&gt;&lt;/font&gt;&lt;/a&gt;</pre>
<p style="text-align:justify;">Colocando no lugar:</p>
<pre style="text-align:justify;">&lt;a href="parceiros.asp"&gt;Parceiros&lt;/a&gt;</pre>
<p style="text-align:justify;">Tendo no CSS:</p>
<pre style="text-align:justify;">.menu{
font-family: Arial, Helvetica, Sans-serif;
font-size: 80%;
font-weight: bold;
color:#FF3300;
}</pre>
<p style="text-align:justify;">Como você pode ver, o CSS é extremamente simples. Aprender esses quatro atributos, mais o “font-style” (para fazer itálico), é a primeira coisa que eu recomendo. É claro, isso apenas faz cócegas nas possibilidades do CSS, ainda há muito o que aprender, mas recomendo começar por aí porque é algo que você pode aprender em alguns minutos e vai te salvar muito, muito tempo. E você vai começar a ter o controle da formatação, tendo todas as definições de fonte em um único arquivo, podendo alterar, por exemplo, a qualquer momento, a fonte de todo o conteúdo ou de todos os menus do site.</p>
<p style="text-align:justify;">O passo seguinte para limpar seu HTML é se livrar do spacer.gif, aquele gif transparente de 1 pixel que se usa para dar espaços em tabelas, e das dezenas de tabelas aninhadas. Para isso vamos começar a estudar o “box-model”.</p>
<p style="text-align:justify;">O pulo-do-gato aqui é um atributo CSS chamado padding. O padding é a distância entre as bordas de um elemento e o texto dentro dele. Assim, se é preciso que o conteúdo de uma célula esteja a 10 pixels da borda esquerda, ao invés de inserir uma célula extra como espaçador, ou inserir mais uma tabela, basta definir uma classe para essa célula. Uma vez que você já está colocando a formatação no CSS, provavelmente esta célula já tem uma classe. Então basta:</p>
<pre style="text-align:justify;">.conteudo{
padding-left:10px;
}</pre>
<p style="text-align:justify;">Isso vai fazer com que o texto esteja a 10 pixels da borda esquerda do documento. Ah, claro, o CSS também pode livrar você de definir no HTML as bordas e o background das células de sua tabela. Lembre-se, quanto mais layout e formatação você colocar no CSS, mais controle terá sobre seu site, principalmente em mudanças de layout durante o processo de produção e em futuras manutenções. O site também será mais leve para carregar.</p>
<p style="text-align:justify;">Concluímos então que, após aprender os atributos de formatação de fonte, o passo seguinte é aprender os atributos background, border e padding. Indo até aqui você com certeza será um desenvolvedor muito mais feliz! Depois de limpar seu HTML, ganhar controle sobre a formatação de seu site e se tornar muito mais produtivo, você está pronto para passar à segunda etapa, correndo atrás da semântica.</p>
<h3 style="text-align:justify;">Começando o Trabalho de Gente Grande</h3>
<p style="text-align:justify;">Muito bem, agora você já pode limpar seu código. Vamos estudar um exemplo prático. No começo de cada uma de suas páginas você tem um título, cujo código hoje é assim:</p>
<pre style="text-align:justify;">&lt;font face="Arial, Helvetica, Sans-serif" size="4"
color="#FFFF00"&gt;&lt;b&gt;Novidades&lt;/b&gt;&lt;/font&gt;</pre>
<p style="text-align:justify;">Ao limpar esse código, você vai substituir esse monte de tags por uma só. Que tag você vai usar? Como o CSS te permite formatar qualquer elemento, muita gente que começa a estudar o assunto acha que é indiferente que tag usar, e coloca algo como:</p>
<pre style="text-align:justify;">&lt;p&gt;Novidades&lt;/p&gt;</pre>
<p style="text-align:justify;">Agora, veja bem, outro desenvolvedor poderia resolver o mesmo problema com:</p>
<pre style="text-align:justify;">&lt;div&gt;Novidades&lt;/div&gt;</pre>
<p style="text-align:justify;">E o resultado visual poderia ser o mesmo. Acontece que há algo na natureza do HTML que nos diz que tag usar. Chamamos esse algo de “semântica”: as tags do HTML tem significado. A tag P é para parágrafos, a tag DIV para divisões no conteúdo, e há uma série de tags para título, h1, h2, h3, h4, h5 e h6. Assim, se você pode usar qualquer tag, pode fazer assim:</p>
<pre style="text-align:justify;">&lt;h1&gt;Novidades&lt;/h1&gt;</pre>
<p style="text-align:justify;">O que você ganha com essa preocupação? Os buscadores inteligentes podem ler semanticamente o conteúdo de um documento, entendendo que trecho de código é um título, por exemplo. Assim, escrever HTML semanticamente correto pode melhorar muito sua visibilidade em buscadores. O segundo bom motivo é que você vai saber para que serve cada tag se tiver que mexer nesse mesmo documento daqui a alguns meses. E vai ser mais fácil também se outra pessoa tiver que dar manutenção no seu código.</p>
<p style="text-align:justify;">Logo, use as tags do HTML para aquilo para o que foram criadas:</p>
<ul style="text-align:justify;">
<li>dd, dl e dt para listas de definições (um glossário, por exemplo)</li>
<li>h1 a h6 para títulos</li>
<li>p para parágrafos</li>
<li>abbr para abreviaturas e acronym para acrônimos</li>
<li>blockquote e q para citações longas e curtas</li>
<li>address para endereços (sabe aquele rodapé onde vai o endereço e o telefone da empresa?)</li>
<li>ul e ol para listas e li para os itens da lista</li>
</ul>
<p style="text-align:justify;">Você pode obter uma lista mais abrangente em:<br />
<a title="XHTML Reference" href="http://www.w3schools.com/xhtml/xhtml_reference.asp" target="_blank">http://www.w3schools.com/xhtml/xhtml_reference.asp</a></p>
<p style="text-align:justify;">E formate tudo ao seu gosto com CSS.</p>
<h3 style="text-align:justify;">Finalmente, Livrando-se das Tabelas</h3>
<p style="text-align:justify;">Não há bons motivos para você eliminar a qualquer custo todas as tabelas de seu primeiro trabalho. Conheço alguns excelentes profissionais, muito talentosos, que fizeram um ótimo trabalho em sua primeira tentativa de tableless. Mas a maioria dos que eu vi tentarem demoraram muito para conseguir da primeira vez, e alguns não obtiveram os resultados que esperavam. Isso tudo serve para que você possa produzir mais rápido e melhor, não o contrário. Então vá com calma. Faça alguns estudos em tableless, comece eliminando parte das tabelas em seus primeiros trabalhos. Por exemplo, remover as células de tabela que formam o menu, trocando por uma lista (com as tags ul e li), é um ótimo desafio para o primeiro projeto.</p>
<p style="text-align:justify;">Ah, e não se esqueça que para dados como uma tabela periódica ou um calendário a solução semanticamente correta é a tabela mesmo. Ou seja, tableless não é ausência de tabelas, é o seu uso apenas onde é semanticamente justificável.</p>
<p style="text-align:justify;">Não vou entrar em detalhes aqui, porque já escrevi bastante sobre como construir um layout no <a href="http://www.tableless.com.br/tutorial/" target="_blank">Tutorial Tableless Básico</a>, mas o conselho é ir com calma, sem estresse. Você logo vai estar produzindo tableless mais fácil do que produz sites com tabelas.</p>
<h3 style="text-align:justify;">XHTML</h3>
<p style="text-align:justify;">Há uma coisa que muita gente que está começando me pergunta: o que é e para que serve esse tal de XHTML? É muito mais simples do que parece. Um arquivo XHTML é um arquivo HTML, que pode ser lido por qualquer browser. Não estamos falando de um novo HTML, com novas tags ou coisa assim. Pelo contrário, o XHTML 1 foi feito para funcionar mesmo em navegadores antigos. Mas, ao mesmo tempo, Um arquivo XHTML é também um arquivo XML válido, que pode ser lido por qualquer interpretador de XML.</p>
<p style="text-align:justify;">Meu primeiro conselho, nesse caso, é que você, se não trabalha com XML, deixe preocupação com o XHTML para depois de dominar bem o código semântico e o layout tableless. Não porque seja complicado, pelo contrário, transformar bom HTML em XHTML é bem simples, mas simplesmente porque você pode obter benefícios muito significativos, e muito mais rapidamente, aprendendo CSS do que XHTML.</p>
<p style="text-align:justify;">O segundo conselho é que você comece a estudar o assunto. Depois de dominar bem layouts CSS, mergulhe no XML. A maioria dos bancos de dados hoje permite extrair dados diretamente em XML e todas as plataformas de aplicações web trabalham bem com XML. E com a poderosa linguagem XSLT você pode muito facilmente oferecer seus os dados em XHTML para o navegador.</p>
<h3 style="text-align:justify;">Voando Alto</h3>
<p style="text-align:justify;">Estamos falando de muito mais do que criar sites estilosos. Há duas semanas esteve aqui um amigo com um Palm novo, um Zire 71, e um celular com acesso à internet. Isso está se tornando cada vez mais barato e comum. Conheço também uma porção de empresas e instituições, entre elas uma série significativa de TeleCentros e órgãos públicos, que estão adotando Linux como sistema operacional para desktops. O Google hoje é responsável por 90% do tráfego que meu site consegue de buscadores. É o primeiro colocado absoluto entre os buscadores. E conseguiu isso indexando semanticamente o conteúdo real dos sites. Praticamente todas as plataformas web estão oferendo suporte a XML e apostando na idéia de webservices.</p>
<p style="text-align:justify;">Quem segue os padrões web não precisa ter medo do futuro. Não importa que browser vai ser o mais usado daqui a dois anos, que tecnologia vai estar na moda ou de onde as pessoas vão estar usando a internet. Seu site estará lá, leve, acessível, atual e útil.</p>
]]></content:encoded>
			<wfw:commentRss>http://ueb3.com.br/blog/o-caminho-suave-para-o-tableless/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>O que é Tableless?</title>
		<link>http://ueb3.com.br/blog/o-que-e-tableless/</link>
		<comments>http://ueb3.com.br/blog/o-que-e-tableless/#comments</comments>
		<pubDate>Fri, 11 Sep 2009 14:45:09 +0000</pubDate>
		<dc:creator>Douglas L. Figueiredo</dc:creator>
				<category><![CDATA[Tendências]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[divs]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[tabelas]]></category>
		<category><![CDATA[tableless]]></category>
		<category><![CDATA[W3C]]></category>

		<guid isPermaLink="false">http://ueb3.com.br/?p=171</guid>
		<description><![CDATA[A Web foi criada para ser um ambiente onde fosse possível trocar informações livremente, e que essas informações pudessem ser acessadas ao redor do planeta por qualquer pessoa. Em 1994, foi criado o W3C (World Wide Web Consortium): um consórcio internacional, onde são desenvolvidas os padrões para a web (Web Standards) tais como: HTML, CSS, [...]]]></description>
			<content:encoded><![CDATA[<p>A Web foi criada para ser um ambiente onde fosse possível trocar informações livremente, e que essas informações pudessem ser acessadas ao redor do planeta por qualquer pessoa. Em 1994, foi criado o W3C (World Wide Web Consortium): um consórcio internacional, onde são desenvolvidas os padrões para a web (Web Standards) tais como: HTML, CSS, XML, XSLT, entre outros.</p>
<p>Naquela época, no mercado de browsers, as opções ainda eram poucas: consistiam apenas em Lynx, Mozaic e Netscape Navigator, da Netscape Communications, então liderada por James Clark. A Microsoft, de Bill Gates, resolveu entrar nesse mercado lançando o Internet Explorer. A partir daí, o Netscape e o Internet Explorer começaram a travar uma guerra atrás de adeptos. A concorrência entre os dois browsers é chamada até hoje de Guerra dos Browsers. Durante essa “guerra”, os padrões do W3C ainda eram meros rascunhos. Por conta disso, as duas empresas que não podiam esperar que esses rascunhos ficassem prontos começaram a lançar seus browsers com padrões proprietários.</p>
<p>Agora o impasse: Os browsers tinham seus próprios padrões… Já os desenvolvedores não conseguiam criar um único código que funcionasse nos dois navegadores. Por este motivo, eles eram obrigados a desenvolver, na maioria das vezes, para apenas um browser.<br />
Isso trouxe mais um problema, agora para os usuários. O usuário que usava Netscape, não conseguia acessar sites que eram feitos para Internet Explorer, e vice-versa.</p>
<p>Como a web não tinha sido projetada para desenvolver os criativos ambientes gráficos que temos atualmente, naturalmente, os recursos de desenvolvimento eram limitados e os criadores faziam das tripas coração para criar seus sites. Entre as muitas idéias que surgiram para ultrapassar ao ambiente de “apenas texto” da internet, estava aquela de utilizar tabelas de HTML para posicionar os elementos no layout, utilizando slices de imagem, gifs transparentes e a técnica de aninhamento de tabelas para contornar os problemas que os padrões proprietários traziam. A esse tipo de técnica, que foi usadapela maior parte dos websites, chamamos de layout com tabelas.</p>
<p>Os sites que seguem os Padrões Web utilizam uma metodologia de desenvolvimento baseado em 3 camadas, são elas:</p>
<ol>
<li> <strong>Informação</strong> – A informação do site é exibida utilizando código XHTML ou HTML.</li>
<li><strong>Formatação</strong> – O XHTML que exibe a informação é formatada com CSS (Folhas de Estilo). É com CSS que comandamos todo o visual do site. Tudo que é visual e decorativo deve ser feito por CSS.</li>
<li> <strong>Comportamento</strong> – Definida por Javascript e AJAX. É a camada que define como os elementos irão se comportar de acordo com as ações do usuário.</li>
</ol>
<p>Em poucas palavras: um site tableless é um site que não utiliza tables para a estruturação do Layout. É um site que segue os Padrões Web.<br />
O termo “tableless” é usado mais largamente aqui no Brasil. Em outros países outros foram mais difundidos, por exemplo: CSS Layouts.</p>
<p>Um site tabeless segue obrigatoriamente regras de semântica. Cada tag tem sua função própria. Por exemplo, para criar um parágrafo de texto, usamos a tag &lt;p&gt;&lt;/p&gt;. A tag Table e suas filhas são utilizados para exibir dados tabulados, por exemplo, uma listagem de produtos, onde são mostrados algumas informações sobre o produto como tamanho, preço, cor, material, disponibilidade, etc…</p>
<div>
<table style="margin: 0pt 0pt 15px;" border="0" align="center">
<tbody>
<tr style="text-align: center;">
<th style="background: gray none repeat scroll 0 0; border: 1px solid #CCCCCC; color: #ffffff; padding: 5px 10px; font-size: 11px;">Tênis</th>
<th style="background: gray none repeat scroll 0 0; border: 1px solid #CCCCCC; color: #ffffff; padding: 5px 10px; font-size: 11px;">Cor</th>
<th style="background: gray none repeat scroll 0 0; border: 1px solid #CCCCCC; color: #ffffff; padding: 5px 10px; font-size: 11px;">Tamanho</th>
<th style="background: gray none repeat scroll 0 0; border: 1px solid #CCCCCC; color: #ffffff; padding: 5px 10px; font-size: 11px;">Preço</th>
<th style="background: gray none repeat scroll 0 0; border: 1px solid #CCCCCC; color: #ffffff; padding: 5px 10px; font-size: 11px;">Disponibilidade</th>
</tr>
<tr>
<td style="border: 1px solid #CCCCCC; padding: 5px 10px; font-size: 11px;">Nike</td>
<td style="border: 1px solid #CCCCCC; padding: 5px 10px; font-size: 11px;">Preto</td>
<td style="border: 1px solid #CCCCCC; padding: 5px 10px; font-size: 11px;">38-39</td>
<td style="border: 1px solid #CCCCCC; padding: 5px 10px; font-size: 11px;">R$ 100,00</td>
<td style="border: 1px solid #CCCCCC; padding: 5px 10px; font-size: 11px;">Em Estoque</td>
</tr>
<tr>
<td style="border: 1px solid #CCCCCC; padding: 5px 10px; font-size: 11px;">Adidas</td>
<td style="border: 1px solid #CCCCCC; padding: 5px 10px; font-size: 11px;">Branco</td>
<td style="border: 1px solid #CCCCCC; padding: 5px 10px; font-size: 11px;">40-41</td>
<td style="border: 1px solid #CCCCCC; padding: 5px 10px; font-size: 11px;">R$ 120,00</td>
<td style="border: 1px solid #CCCCCC; padding: 5px 10px; font-size: 11px;">Esgotado</td>
</tr>
</tbody>
</table>
</div>
<p>Formatar informações dos sites não é algo novo. Por volta de 1970, no começo da tragetória do SGML, vários browsers já personalizavam as aparências dos documentos, cada um com seu estilo próprio.</p>
<p>Håkon Wium Lie, estudava e percebia as dificuldades que se tinham ao desenvolver um site, e resolveu criar uma maneira fácil para formatar a informação do HTML. Foi aí que ele propôs a criação do CSS ou Cascading Style Sheets. Esse era o ano de 1994.</p>
<p>Em 1995 eles apresentaram sua proposta e finalmente, o W3C – World Wide Web Consortium – que estava acabando de nascer, se interessou pelo projeto e resolveu criar uma equipe, obviamente liderada por Håkon e Bert Bos. O resultado apareceu logo, em 1996, eles lançaram a recomendação oficial pelo W3C do CSS Level 1 (CSS 1).</p>
<p>Dois anos depois, no dia 12 de Maio de 1998, eles lançaram a recomendação do CSS de nível 2. A segunda versão das Folhas de Estilo para web.</p>
<p>Hoje em dia, o nível de compatibilidade entre os browsers é muito parecido, de forma que se você implementar algo específico em um browser, é muito provável que em outro browser esteja igual.</p>
<p>Portanto, o desenvolvedor pode ficar tranqüilo quanto a maioria dos problemas causados por diferenças entre browsers.</p>
<p><span style="color: #888888;">Fonte: www.tableless.com.br</span></p>
]]></content:encoded>
			<wfw:commentRss>http://ueb3.com.br/blog/o-que-e-tableless/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS3: Conheça os novos efeitos do CSS</title>
		<link>http://ueb3.com.br/blog/css3-conheca-os-novos-efeitos-do-css/</link>
		<comments>http://ueb3.com.br/blog/css3-conheca-os-novos-efeitos-do-css/#comments</comments>
		<pubDate>Thu, 10 Sep 2009 18:20:00 +0000</pubDate>
		<dc:creator>Douglas L. Figueiredo</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Dicas]]></category>
		<category><![CDATA[Tendências]]></category>
		<category><![CDATA[Vídeos]]></category>
		<category><![CDATA[css3]]></category>
		<category><![CDATA[efeitos]]></category>
		<category><![CDATA[recursos]]></category>
		<category><![CDATA[vídeo]]></category>

		<guid isPermaLink="false">http://ueb3.com.br/?p=157</guid>
		<description><![CDATA[Conheça as novas técnicas que o CSS3 tem pra você! Infelizmente ainda não podemos utilizar desta maravilhosa linguagem pois nem todos os navegadores suportam tais efeitos&#8230;&#8230;não vou nem comentar sobre o IE6 hehe Acompanhem o vídeo de digam o que acharam! PS. retirado do Blog do Bruno Ávila]]></description>
			<content:encoded><![CDATA[<p>Conheça as novas técnicas que o CSS3 tem pra você! Infelizmente ainda não podemos utilizar desta maravilhosa linguagem pois nem todos os navegadores suportam tais efeitos&#8230;&#8230;não vou nem comentar sobre o IE6 hehe</p>
<p>Acompanhem o vídeo de digam o que acharam!</p>
<p><span style="color:#888888;">PS. retirado do Blog do Bruno Ávila</span></p>
<div align="center"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="366" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://blip.tv/play/grg3gZn4DgI" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="480" height="366" src="http://blip.tv/play/grg3gZn4DgI" allowfullscreen="true"></embed></object></div>
]]></content:encoded>
			<wfw:commentRss>http://ueb3.com.br/blog/css3-conheca-os-novos-efeitos-do-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>As melhores ferramentas para validar seu código</title>
		<link>http://ueb3.com.br/blog/as-melhores-ferramentas-para-validar-seu-codigo/</link>
		<comments>http://ueb3.com.br/blog/as-melhores-ferramentas-para-validar-seu-codigo/#comments</comments>
		<pubDate>Tue, 25 Aug 2009 17:48:33 +0000</pubDate>
		<dc:creator>Douglas L. Figueiredo</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Dicas]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[firebug]]></category>
		<category><![CDATA[links quabrados]]></category>
		<category><![CDATA[validação de código]]></category>
		<category><![CDATA[validar código]]></category>
		<category><![CDATA[validar links]]></category>

		<guid isPermaLink="false">http://ueb3.com.br/?p=121</guid>
		<description><![CDATA[O seu browser estar apresentando seu site corretamente não significa que seu código esta correto e também não significa que vai funcionar em mais 40 browsers que são usados atualmente. Programar a interface de um site é bem diferente do que programar numa linguagem server side onde, se você esquecer um “;” ou não fechar [...]]]></description>
			<content:encoded><![CDATA[<p>O seu browser estar apresentando seu site corretamente não significa que seu código esta correto e também não significa que vai funcionar em mais 40 browsers que são usados atualmente. Programar a interface de um site é bem diferente do que programar numa linguagem server side onde, se você esquecer um “;” ou não fechar um if, seu código nem roda. Programando no lado do cliente, diversos erros de html são “consertados” pela maioria dos browsers. Ou seja, você esquece de fechar uma tag, ou coloca um &lt;h1&gt; dentro de um &lt;a&gt; <strong>no seu browser</strong> e aparece tudo ok, mas é errado.</p>
<p>Ok, mesmo que o site seja testado no Firefox, ie6, ie7, Safari, Chrome e Opera, quem garante que os navegadores Netscape 6.0, Ant Galio 3.1, Blaze 6.0 ou o Playstation 3 5.0 vão interpretar corretamente também?</p>
<p>E é por isso que devemos validar o código. Existem diversas <strong>ferramentas para validação de código</strong>.<br />
A mais importante delas, creio que é o <a rel="nofollow" href="https://addons.mozilla.org/pt-BR/firefox/addon/249" target="_blank">HTML validator</a>, uma extensão de firefox. Além de válidar seu (x)html, ele diz o que está errado e como consertar o que é ótimo pra quem está começando a programar interface.</p>
<p style="text-align: center;"><img class="aligncenter" title="html validator" src="http://www.tidbits.com.br/wp-content/uploads/2008/11/html-validator.png" alt="html validator" /></p>
<p>Para validar CSS, a melhor opção é o <a rel="nofollow" href="http://jigsaw.w3.org/css-validator" target="_blank">CSS validator</a> da W3C. Infelizmente não existe (ou não conheço) nenhuma opção desktop. Mas mesmo assim, vale a pena utilizar.</p>
<p style="text-align: center;"><img title="CSS validator" src="http://www.tidbits.com.br/wp-content/uploads/2008/11/css-validator.png" alt="CSS validator" /></p>
<p style="text-align: center;"><img src="http://www.tidbits.com.br/download/_images/copy.gif" alt="copy" /></p>
<p>Já o <a rel="nofollow" href="http://validator.w3.org/checklink" target="_blank">link-checker</a> é um validador de links que analisa seu site e procura por links quebrados, muito útil. A análise é BEM completa, e demora muito tempo, afinal ele checa tudo. Analisando a home do TidBits ele demorou 286 segundos e checou mais de 200 arquivos.</p>
<p style="text-align: center;"><img title="link checker" src="http://www.tidbits.com.br/wp-content/uploads/2008/11/link-checker.png" alt="link checker" /></p>
<p>Outras ferramentas como o <a href="https://addons.mozilla.org/pt-BR/firefox/addon/1843" target="_blank">firebug</a>, ajudam bastante na codificação, principalmente pra detectar erros de JavaScript. E finalmente, para garantir a acessibilidade do seu site, existe diversas opções, duas em português: o <a rel="nofollow" href="http://www.acessobrasil.org.br/" target="_blank">Da Silva</a> e o <a rel="nofollow" href="http://www.governoeletronico.gov.br/" target="_blank">ASES</a> desenvolvido pelo governo eletrônico.</p>
<p><em><strong><span style="color: #888888;">Fonte: TidBits</span></strong></em></p>
]]></content:encoded>
			<wfw:commentRss>http://ueb3.com.br/blog/as-melhores-ferramentas-para-validar-seu-codigo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

