<?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>desenvolvimento para web &#187; javascript</title>
	<atom:link href="http://desenvolvimentoparaweb.com/categoria/javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://desenvolvimentoparaweb.com</link>
	<description>padrões da web, usabilidade, acessibilidade, web design, SEO, blogs e tecnologias para desenvolver a web</description>
	<lastBuildDate>Mon, 16 Aug 2010 13:00:14 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Melhores editores WYSIWYG para seu projeto</title>
		<link>http://desenvolvimentoparaweb.com/javascript/melhores-editores-wysiwyg-para-seu-projeto/</link>
		<comments>http://desenvolvimentoparaweb.com/javascript/melhores-editores-wysiwyg-para-seu-projeto/#comments</comments>
		<pubDate>Tue, 01 Jun 2010 13:00:31 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[javascript]]></category>
		<category><![CDATA[ferramentas]]></category>
		<guid isPermaLink="false">http://desenvolvimentoparaweb.com/?p=629</guid>
		<description><![CDATA[Os melhores editores WYSIWYG para seu projeto ir para o pr&oacute;ximo n&iacute;vel!]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-640" src="http://desenvolvimentoparaweb.com/wp-content/uploads/2010/05/wysiwyg-melhores-editores-melhor-editor-wysiwyg.jpg" alt="WYSIWYG: melhores editores" width="200" height="200" /></p>
<p>Para quem est&aacute; acostumado a utilizar CMSs em desenvolvimento web, deparar-se com um <strong>editor WYSIWYG</strong> para p&aacute;ginas e artigos &eacute; algo banal. Para desenvolvimento de softwares desde o in&iacute;cio, &eacute; preciso implementar um desses editores e, com tantas op&ccedil;&otilde;es dispon&iacute;veis no mercado, a escolha pode se tornar complicada&#8230; Para isso, confira os 10 melhores editores WYSIWYG para seu pr&oacute;ximo projeto!</p>
<div class="artigo-traduzido">Este &eacute; um artigo traduzido do original &#8220;<a href="http://www.1stwebdesigner.com/resources/10-best-wysiwyg-text-and-html-editors-for-your-next-project/">10 best WYSIWYG Text and HTML Editors for Your Next Project</a>&#8220;, do <em>blog</em> <a href="http://www.1stwebdesigner.com/resources/10-best-wysiwyg-text-and-html-editors-for-your-next-project/">Graphic and Web Design Blog</a>, e sofreu algumas adapta&ccedil;&otilde;es.</div>
<h3>NicEdit</h3>
<p><a href="http://nicedit.com/download.php"><img class="size-full wp-image-635 aligncenter" src="http://desenvolvimentoparaweb.com/wp-content/uploads/2010/05/melhores-editores-wysiwyg-nicedit.jpg" alt="Melhores editores WYSIWYG: NicEdit" width="503" height="93" /></a></p>
<p>NicEdit &eacute; uma alternativa para algumas maiores e mais complexos editores WYSIWYG existentes, com seu pequeno tamanho de download. Ele possui muitos dos recursos esperados por esse tipo de editor e se integra facilmente em seu site ou software.</p>
<h3>TinyMCE</h3>
<p style="text-align: center;"><a href="http://tinymce.moxiecode.com/download.php"><img class="size-full wp-image-638 aligncenter" src="http://desenvolvimentoparaweb.com/wp-content/uploads/2010/05/melhores-editores-wysiwyg-tinymce.jpg" alt="Melhores editores WYSIWYG: TinyMCE" width="561" height="186" /></a></p>
<p>TinyMCE &eacute; um editor WYSIWYG  javascript HTML open source. &Eacute; f&aacute;cil de integrar e &eacute; altamente personaliz&aacute;vel com temas e plugins. TinyMCE &eacute; um dos mais completo editores, oferecendo uma experi&ecirc;ncia semelhante a editores instal&aacute;veis, como BrOffice e MS Word.</p>
<h3>CKEditor</h3>
<p style="text-align: center;"><a href="http://ckeditor.com/download"><img class="size-full wp-image-630 aligncenter" src="http://desenvolvimentoparaweb.com/wp-content/uploads/2010/05/melhores-editores-wysiwyg-ckeditor.jpg" alt="Melhores editores WYSIWYG: " width="536" height="288" /></a></p>
<p>CKeditor &eacute; o novo FCKEditor, consagrado editor para os desenvolvedores mais veteranos e l&iacute;der de mercado anteriormente. Baseando-se nisso, o CKEditor promete ser um editor ainda melhor, j&aacute; que fez melhor o que era considerado falho em seu antecessor.</p>
<h3>YUI Rich Text Editor</h3>
<p style="text-align: center;"><a href="http://developer.yahoo.com/yui/download/"><img class="aligncenter size-full wp-image-639" src="http://desenvolvimentoparaweb.com/wp-content/uploads/2010/05/melhores-editores-wysiwyg-yui-rich-texteditor.jpg" alt="Melhores editores WYSIWYG: YUI Rich Text Editor" width="485" height="351" /></a></p>
<p>O YUI Rich Text Editor &eacute; um controle UI do Yahoo que transforma textareas em <strong>editores WYSIWYG completos</strong>. Ele vem em v&aacute;rias vers&otilde;es diferentes, com diferentes caracter&iacute;sticas e complexidade, mas ainda consegue atingir uma grande experi&ecirc;ncia do usu&aacute;rio sem uma infinidade de bot&otilde;es se aglomerando na interface.</p>
<h3>MarkItUp!</h3>
<p style="text-align: center;"><a href="http://markitup.jaysalvat.com/downloads/"><img class="aligncenter size-full wp-image-633" src="http://desenvolvimentoparaweb.com/wp-content/uploads/2010/05/melhores-editores-wysiwyg-markitup.jpg" alt="Melhores editores WYSIWYG: MarkItUp!" width="563" height="297" /></a></p>
<p>Markitup &eacute; um plugin para jQuery que permite que voc&ecirc; transforme textareas em editores de marca&ccedil;&atilde;o com qualquer marcadores que voc&ecirc; quiser: HTML, Sintaxe Wiki e BBcode s&atilde;o apenas algumas que s&atilde;o suportadas. MarkItUp! n&atilde;o &eacute; um editor WYSIWYG, propriamente dito, mas oferece todas as caracter&iacute;sticas b&aacute;sicas esperadas de um.</p>
<h3>FreeTextBox</h3>
<p style="text-align: center;"><a href="http://freetextbox.com/download/"><img class="aligncenter size-full wp-image-631" src="http://desenvolvimentoparaweb.com/wp-content/uploads/2010/05/melhores-editores-wysiwyg-free-text-box.jpg" alt="Melhores editores WYSIWYG: FreeTextBox" width="549" height="217" /></a></p>
<p>FreeTextBox &eacute; um editor HTML especificamente para ASP.NET. A apar&ecirc;ncia do editor &eacute; bastante parecida com a do MS Word. Apesar de a vers&atilde;o gratuita n&atilde;o ter uma s&eacute;rie de features, ela possui mais do que o suficiente para permitir uma edi&ccedil;&atilde;o WYSIWYG de qualidade.</p>
<h3>MooEditable</h3>
<p><a href="http://cheeaun.github.com/mooeditable/"><img class="aligncenter size-full wp-image-634" src="http://desenvolvimentoparaweb.com/wp-content/uploads/2010/05/melhores-editores-wysiwyg-mooeditable.jpg" alt="Melhores editores WYSIWYG: MooEditable" width="474" height="164" /></a></p>
<p>Editores WYSIWYG tornaram-se populares devido aos v&aacute;rios plugins para  jQuery existentes, mas esses editores n&atilde;o s&atilde;o t&atilde;o comuns para Mootools. MooEditable, no entanto, preenche essa lacuna, fornecendo uma simples, mas eficaz, experi&ecirc;ncia do usu&aacute;rio, baseada em uma biblioteca de javascript bem escrita. Se voc&ecirc; usa Mootools, ficar&aacute; feliz em usar o MooEditable.</p>
<h3>OpenWysiwyg﻿</h3>
<p><a href="http://www.openwebware.com/download.shtml"><img class="aligncenter size-full wp-image-636" src="http://desenvolvimentoparaweb.com/wp-content/uploads/2010/05/melhores-editores-wysiwyg-openwysiwyg.gif" alt="Melhores editores WYSIWYG: OpenWysiwig" width="450" height="220" /></a></p>
<p>OpenWysiwyg &eacute; um editor WYSIWYG cross browser com quase todos os recursos de edi&ccedil;&atilde;o que voc&ecirc; pode precisar. Ele apresenta uma interface elegante, incluindo dropdowns e bot&otilde;es. Um de seus pontos fortes &eacute; sua capacidade de lidar bem com tabelas, com bordas e cores diferentes. No entanto, o Google Chrome ainda n&atilde;o &eacute; suportado&#8230;</p>
<h3>Spaw Editor</h3>
<p><a href="http://www.solmetra.com/en/disp.php/en_products/en_spaw/en_spaw_download"><img class="aligncenter size-full wp-image-637" src="http://desenvolvimentoparaweb.com/wp-content/uploads/2010/05/melhores-editores-wysiwyg-spaweditor.jpg" alt="Melhores editores WYSIWYG: Spaw Editor" width="537" height="232" /></a></p>
<p>Spaw Editor &eacute; um editor, assim como os outros editores WYSIWYG, que permite desenvolvedores de web substituir uma &aacute;rea de texto padr&atilde;o (textarea) por um editor completo, totalmente personaliz&aacute;vel, multilingue e com suporte a temas.</p>
<h3>jHtmlArea</h3>
<p><a href="http://jhtmlarea.codeplex.com/releases/view/30759"><img class="aligncenter size-full wp-image-632" src="http://desenvolvimentoparaweb.com/wp-content/uploads/2010/05/melhores-editores-wysiwyg-jhtmlarea.jpg" alt="Melhores editores WYSIWYG: jHtmlArea" width="423" height="159" /></a></p>
<p>jHtmlArea &eacute; outro editor de texto WYSIWYG constru&iacute;do como um plugin para a biblioteca jQuery. Seu objetivo &eacute; ser simples e leve, apenas com as op&ccedil;&otilde;es mais necess&aacute;rias. Permite-se a ser facilmente customiz&aacute;vel atrav&eacute;s de temas, as fun&ccedil;&otilde;es e idiomas.</p>
<h3>Sugest&otilde;es WYSIWYG?</h3>
<p>E voc&ecirc;, conhece um <strong>bom editor WYSIWYG</strong> e gostaria de compartilhar? Fa&ccedil;a um coment&aacute;rio com o nome e link do editor WYSIWYG e o artigo ser&aacute; complementado com sua sugest&atilde;o! Participe!</p>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/jquery/melhorando-interacao-formularios-busca/" title="Melhorando a interação em formulários de busca">Melhorando a interação em formulários de busca</a></li><li><a href="http://desenvolvimentoparaweb.com/indicacoes/ferramentas-e-recursos-para-desenvolvimento-web/" title="Ferramentas e recursos para desenvolvimento web">Ferramentas e recursos para desenvolvimento web</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/ferramentas-gratuitas-para-testes-de-seguranca-em-sites/" title="Ferramentas gratuitas para testes de segurança em sites">Ferramentas gratuitas para testes de segurança em sites</a></li><li><a href="http://desenvolvimentoparaweb.com/usabilidade/recursos-usabilidade/" title="Recursos de usabilidade grátis">Recursos de usabilidade grátis</a></li><li><a href="http://desenvolvimentoparaweb.com/midia-social/twitter-ferramentas/" title="Ferramentas para o twitter">Ferramentas para o twitter</a></li><li><a href="http://desenvolvimentoparaweb.com/design/7-ferramentas-para-web-designs-melhores/" title="7 ferramentas para web designs melhores">7 ferramentas para web designs melhores</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/8-dicas-fazer-codigos-melhores-jquery/" title="8 dicas para fazer códigos melhores com jQuery">8 dicas para fazer códigos melhores com jQuery</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/a-melhor-lista-de-plugins-para-jquery-do-mundo/" title="A melhor lista de plugins para jQuery do mundo!">A melhor lista de plugins para jQuery do mundo!</a></li><li><a href="http://desenvolvimentoparaweb.com/indicacoes/ie7-js-um-javascript-para-fazer-o-internet-explorer-renderizar-melhor/" title="ie7-js: um javascript para fazer o Internet Explorer renderizar melhor">ie7-js: um javascript para fazer o Internet Explorer renderizar melhor</a></li><li><a href="http://desenvolvimentoparaweb.com/acessibilidade/colorblind-web-page-filter/" title="Colorblind Web Page Filter">Colorblind Web Page Filter</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/javascript/melhores-editores-wysiwyg-para-seu-projeto/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>NextGEN Gallery com SexyLightBox: sua galeria de imagens mais sexy</title>
		<link>http://desenvolvimentoparaweb.com/jquery/nextgen-gallery-com-sexylightbox-sua-galeria-de-imagens-mais-sexy/</link>
		<comments>http://desenvolvimentoparaweb.com/jquery/nextgen-gallery-com-sexylightbox-sua-galeria-de-imagens-mais-sexy/#comments</comments>
		<pubDate>Fri, 20 Nov 2009 17:38:10 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[indicações]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[tutoriais]]></category>
		<category><![CDATA[web design]]></category>
		<guid isPermaLink="false">http://www.desenvolvimentoparaweb.com/?p=491</guid>
		<description><![CDATA[Aumente a experi&ecirc;ncia dos visitantes de seu site de forma surpreendente atrav&eacute;s de uma galeria de imagens fant&aacute;stica!]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-494" title="NextGen Gallery com SexLightbox no Wordpress" src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2009/11/nextgen-gallery-sexlightbox-wordpress.jpg" alt="NextGen Gallery com SexLightbox no Wordpress" width="400" height="232" /></p>
<p>&Eacute; fato que o <em>plugin</em> <a title="NextGEN Gallery." href="http://wordpress.org/extend/plugins/nextgen-gallery/">NextGEN Gallery</a> do WordPress &eacute; o melhor quando o assunto &eacute; <strong>gerenciamento de galerias de imagens</strong>. Com NextGEN Gallery &eacute; poss&iacute;vel criar galerias facilmente, acrescentar/retirar imagens em modo <em>batch</em> (&eacute; poss&iacute;vel enviar um arquivo .zip e ele &#8220;abre&#8221; as imagens numa galeria), d&aacute; pra criar &aacute;lbuns, copiar/transferir imagens entre galerias, inserir marca d&#8217;&aacute;gua automaticamente, enfim, o NextGEN Gallery &eacute; bem conhecido na comunidade WordPress e certamente est&aacute; no &#8220;Top 5&#8243; de plugins!</p>
<p>Existe, tamb&eacute;m, apesar n&atilde;o ser t&atilde;o conhecido, um script &agrave; &#8220;lightbox&#8221; muito bonito e interessante: <a title="Site do SexyLightbox" href="http://www.coders.me/web-html-js-css/javascript/sexy-lightbox-2">SexyLightBox</a>. Como &eacute; poss&iacute;vel ver em sua p&aacute;gina, o efeito que ele oferece &eacute; bem interessante e, de certa maneira, diferenciado dos outros <em>lightboxes</em> que encontramos por a&iacute; (&ecirc;nfase ao fato de as imagens serem apresentadas em tamanho completo respeitando a resolu&ccedil;&atilde;o do navegador do visitante).</p>
<p>Aproveitando que o <strong>NextGEN Gallery</strong> oferece a possibilidade de se utilizar <em>script </em>de terceiros para a exibi&ccedil;&atilde;o de suas galerias e somado ao fato de que o <strong>SexyLightBox</strong> &eacute; realmente interessante&#8230; <strong>NextGEN Gallery + SexyLightBox = Galerias de Imagens Sexy!</strong></p>
<h3>Baixando, instalando e configurando NextGEN Gallery</h3>
<p>O primeiro passo &eacute; baixar e instalar NextGEN Gallery no seu WordPress. Devido ao fato de eles serem de &#8220;naturezas&#8221; diferentes (o primeiro &eacute; um plugin do WordPress; o segundo &eacute; um script que pode ser usado em qualquer tipo de site), a maneira de instalar e usar cada um deles &eacute; diferente.</p>
<p>Para o <strong>NextGEN Gallery</strong>, devido ao fato de ser um <strong>plugin do WordPress</strong>, a instala&ccedil;&atilde;o &eacute; aquela, mesma, que j&aacute; estamos acostumados:</p>
<ul>
<li><a href="http://wordpress.org/extend/plugins/nextgen-gallery/">Baixar o NextGEN Gallery</a>;</li>
<li>Descompactar em sua pasta <strong>wp-content/plugins</strong>;</li>
<li>Habilitar o plugin.</li>
</ul>
<p>Depois, perceba que aparece em seus menus um novo m&oacute;dulo, &#8220;Gallery&#8221;, com subop&ccedil;&otilde;es para controle do NextGen.</p>
<p>&Eacute; poss&iacute;vel traduzir as op&ccedil;&otilde;es para v&aacute;rios idiomas, inclusive L&iacute;ngua Portuguesa. <a href="http://alexrabe.de/wordpress-plugins/nextgen-gallery/languages/">Baixe o pacote Portuguese / Brazilian Portugu&ecirc;s [pt_BR]</a> nas tradu&ccedil;&otilde;es oficiais e fa&ccedil;a upload do arquivo <strong>.mo</strong> para <strong>wp-content/plugins/nextgen-gallery/lang</strong> e, automaticamente, os menus ser&atilde;o traduzidos.</p>
<div id="attachment_492" class="wp-caption aligncenter" style="width: 155px"><img class="size-full wp-image-492" title="Painel NextGen Gallery no Wordpress" src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2009/11/painel-nextgen-gallery-wordpress.gif" alt="Painel NextGen Gallery no Wordpress" width="145" height="287" /><p class="wp-caption-text">Painel NextGen Gallery em L&iacute;ngua Portuguesa</p></div>
<p>Para j&aacute; preparar o NextGen para trabalhar com o SexyLightBox, acesse em seu painel WordPress <strong>Galeria &gt; Op&ccedil;&otilde;es &gt; Efeitos</strong> e altere as op&ccedil;&otilde;es para:</p>
<ul>
<li><strong>Efeito Javascript para miniaturas:</strong> Personalizado;</li>
<li><strong>Linha de c&oacute;digo do link:</strong> rel=&#8221;sexylightbox&#8221;.</li>
</ul>
<div id="attachment_493" class="wp-caption aligncenter" style="width: 455px"><img class="size-full wp-image-493" title="Configura&ccedil;&atilde;o NextGen Gallery para SexyLightbox" src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2009/11/painel-nextgen-gallery-wordpress-sexy-lightbox.gif" alt="Configura&ccedil;&atilde;o NextGen Gallery para SexyLightbox" width="445" height="250" /><p class="wp-caption-text"> </p></div>
<h3>Baixando, instalando e configurando SexyLighbox</h3>
<p>V&aacute; at&eacute; o site oficial do SexyLighbox para <a href="http://www.coders.me/web-html-js-css/javascript/sexy-lightbox-2#download">fazer download do SexyLightbox</a>. Depois, &eacute; preciso subir a pasta descompactada para o servidor.</p>
<p>N&atilde;o sei voc&ecirc;, mas eu costumo criar uma pasta &#8220;js&#8221; dentro do meu tema para tudo ficar organizado e eu poder usar as fun&ccedil;&otilde;es de caminho relativo do WordPress tranquilamente. Ent&atilde;o, uma estrutura que eu usaria para o caso seria <strong>wp-content/themes/MEU-TEMA/js/sexy-lightbox-2.3</strong> (essa &eacute; a vers&atilde;o mais atual no dia de publica&ccedil;&atilde;o deste artigo).</p>
<p>Agora &eacute; o momento de chamar o SexyLightbox para que funcione em seu tema. H&aacute; <strong>muitas</strong> maneiras diferentes de mexer com chamadas a scripts no WordPress; no caso, vou mostrar uma delas e, em artigos futuros, vou comentando sobre as outras (essa &eacute; a deixa para voc&ecirc; <a href="http://www.desenvolvimentoparaweb.com/feed">assinar o feed do desenvolvimento para web</a>).</p>
<p>Uma coisa importante &eacute; que o SexyLighbox n&atilde;o &eacute; feito para ser usado em <em>standalone</em>, ele deve estar associado a jQuery ou Mootools. Obviamente vamos usar jQuery para o servi&ccedil;o!  ;-)</p>
<p>Ent&atilde;o, o c&oacute;digo com as respectivas chamadas a scripts e folhas de estilo fica assim:</p>
<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">&lt;script type=&quot;text/javascript&quot; src=&quot;http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js&quot;&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;&lt;?php print get_bloginfo('template_url') ?&gt;/js/sexy-lightbox-2.3/jQuery/jquery.easing.1.3.js&quot;&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;&lt;?php print get_bloginfo('template_url') ?&gt;/js/sexy-lightbox-2.3/jQuery/sexylightbox.v2.3.jquery.js&quot;&gt;&lt;/script&gt;
&lt;link rel=&quot;stylesheet&quot; href=&quot;&lt;?php print get_bloginfo('template_url') ?&gt;/js/sexy-lightbox-2.3/jQuery/sexylightbox.css&quot; type=&quot;text/css&quot; media=&quot;all&quot; /&gt;
<span style="color: #339933;">&lt;</span>script type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span>
$<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
    SexyLightbox.<span style="color: #660066;">initialize</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>color<span style="color: #339933;">:</span><span style="color: #3366CC;">'white'</span><span style="color: #339933;">,</span> imagesdir<span style="color: #339933;">:</span> <span style="color: #3366CC;">'&lt;?php print get_bloginfo('</span>template_url<span style="color: #3366CC;">') ?&gt;/js/sexy-lightbox-2.3/jQuery/sexyimages'</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span></pre></div></div>
<p>Perceba que alguns par&acirc;metros foram passados na inicializa&ccedil;&atilde;o do script do SexyLightbox. O grande &#8220;trunfo&#8221; &eacute; usar o par&acirc;metro <strong>imagesdir</strong>, porque na documenta&ccedil;&atilde;o est&aacute; errado!</p>
<h4>Personalizando seu SexyLighbox</h4>
<p>Uma coisa muito boa &eacute; que h&aacute; uma pasta &#8220;PSDs&#8221; no SexyLighbox para que cada um posso personalizar a apar&ecirc;ncia como quiser. Ent&atilde;o, voc&ecirc; pode alterar a cor de fundo, texto, alterar os elementos (setinhas, etc) e usar da forma que voc&ecirc; quiser. Ent&atilde;o quando voc&ecirc; alterar a cor de fundo para o SexyLighbox ficar com a identidade visual de seu site, voc&ecirc; vai perceber que a parte do meio da moldura ainda permanece intacta. No caso, voc&ecirc; deve fazer um pequeno acr&eacute;scimo de CSS em seu arquivo padr&atilde;o (pode ser ao final):</p>
<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#SLB-Contenido</span> <span style="color: #00AA00;">&#123;</span>
<span style="color: #000000; font-weight: bold;">border-color</span><span style="color: #00AA00;">:</span><span style="color: #cc00cc;">#HEXADECIMAL</span> !important<span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>
<h3>Agora voc&ecirc; tem galerias Sexy!</h3>
<p>Com isso, agora voc&ecirc; galerias de imagens <strong>automatizadas</strong> e <strong>sexy</strong>! Para tirar melhor proveito disso, estude a documenta&ccedil;&atilde;o do NextGen Gallery (al&eacute;m dos <a href="http://alexrabe.de/forums/">f&oacute;runs</a>, os <a href="http://dpotter.net/Technical/2008/03/nextgen-gallery-review-introduction/">tutoriais sobre NextGen de David Potter</a> devem ajudar) e do SexyLightbox para incrementar/customizar ainda mais as galerias de imagens de seu site para que fiquem pr&aacute;ticas, bonitas e com excelente performance.</p>
<p>E capriche nas imagens!  ;-)</p>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/jquery/jquery-mais-50-dos-melhores-tutoriais-apostilas-e-exemplos/" title="jQuery: mais 50 dos melhores tutoriais, apostilas e exemplos">jQuery: mais 50 dos melhores tutoriais, apostilas e exemplos</a></li><li><a href="http://desenvolvimentoparaweb.com/xhtml/textarea-dicas-truques-textarea/" title="Textarea: dicas e truques que você sempre quis saber">Textarea: dicas e truques que você sempre quis saber</a></li><li><a href="http://desenvolvimentoparaweb.com/css/gradiente-css-cross-browser-degrades-css-sem-usar-imagens/" title="Gradiente CSS cross browser: degradês em CSS sem usar imagens">Gradiente CSS cross browser: degradês em CSS sem usar imagens</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/15-comandos-sql-wordpress/" title="15 fantásticos comandos SQL para WordPress">15 fantásticos comandos SQL para WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/usabilidade/ferramentas-criacao-wireframes/" title="Ferramentas para criação de wireframes">Ferramentas para criação de wireframes</a></li><li><a href="http://desenvolvimentoparaweb.com/css/rolagem-fundo-transparente-css/" title="Rolagem com fundo transparente com CSS">Rolagem com fundo transparente com CSS</a></li><li><a href="http://desenvolvimentoparaweb.com/design/7-ferramentas-para-web-designs-melhores/" title="7 ferramentas para web designs melhores">7 ferramentas para web designs melhores</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/otimizacao-wordpress-performance-desempenho-blog-site/" title="Otimização WordPress: aumente a performance e desempenho de seu blog / site">Otimização WordPress: aumente a performance e desempenho de seu blog / site</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/jetpack-explorando-novas-maneiras-de-ampliar-e-personalizar-a-web/" title="Jetpack: explorando novas maneiras de ampliar e personalizar a web">Jetpack: explorando novas maneiras de ampliar e personalizar a web</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/como-criar-sumarios-dinamicamente-com-o-toc-table-of-contents-jquery-plugin-jquerytoc/" title="Como criar sumários dinamicamente com o TOC (Table of Contents) jQuery plugin">Como criar sumários dinamicamente com o TOC (Table of Contents) jQuery plugin</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/jquery/nextgen-gallery-com-sexylightbox-sua-galeria-de-imagens-mais-sexy/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Como usar qualquer tipo (fonte tipogr&#225;fica) em seu blog WordPress</title>
		<link>http://desenvolvimentoparaweb.com/javascript/como-usar-qualquer-tipo-fonte-tipografica-em-seu-blog-wordpress/</link>
		<comments>http://desenvolvimentoparaweb.com/javascript/como-usar-qualquer-tipo-fonte-tipografica-em-seu-blog-wordpress/#comments</comments>
		<pubDate>Fri, 05 Sep 2008 15:28:38 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[blogs]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[customização]]></category>
		<category><![CDATA[fonte]]></category>
		<category><![CDATA[scripts]]></category>
		<category><![CDATA[tipo]]></category>
		<guid isPermaLink="false">http://www.desenvolvimentoparaweb.com/?p=380</guid>
		<description><![CDATA[Aprenda como usar qualquer tipo (fonte tipogr&aacute;fica) para aumentar a qualidade e n&iacute;vel profissional de seu site]]></description>
			<content:encoded><![CDATA[<p style="text-align: center; border:1px solid #999"><img class="size-full wp-image-387" title="Imagem com diversos tipos (fontes tipogr&aacute;ficas)." src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2008/09/diversos-tipos-fontes-tipograficas.gif" alt="Imagem com diversos tipos (fontes tipogr&aacute;ficas)." width="500" height="150" /></p>
<p>Uma das (ainda) grandes limita&ccedil;&otilde;es da <em>web</em> refere-se &agrave; <strong>usar qualquer fonte tipogr&aacute;fica em <em>web sites</em></strong>. Por padr&atilde;o, caso a pessoa n&atilde;o tenha determinado tipo que tenha sido especificado para ser exibido, o navegador renderiza por um que seja o mais pr&oacute;ximo ou secund&aacute;rio &#8211; determinado pelo pr&oacute;prio desenvolvedor. Isso, realmente, &eacute; uma limita&ccedil;&atilde;o, j&aacute; que n&atilde;o &eacute; poss&iacute;vel &#8220;controlar&#8221; inteiramente como ser&aacute; a <strong>exibi&ccedil;&atilde;o de tipos</strong> nos <em>sites</em>.</p>
<p>Enquanto algo melhor n&atilde;o &eacute; implementado por padr&atilde;o, existe a possibilidade de fazer uma &#8220;gambiarra&#8221; para se <strong>exibir os textos em qualquer fonte tipogr&aacute;fica</strong>. S&atilde;o t&eacute;cnicas que variam desde a implementa&ccedil;&atilde;o &#8220;na unha&#8221; de imagens com textos, passando por <em>javascript</em>, &agrave; mudan&ccedil;a de tipos usando Flash. S&atilde;o tantas as op&ccedil;&otilde;es e <em>scripts</em> prontos que &eacute; como ir a uma loja onde tudo &eacute; gratuito: basta escolher e pegar.</p>
<p>Se voc&ecirc; ficou &#8220;espantado&#8221; com o t&iacute;tulo deste artigo, &#8220;<strong>Como usar qualquer tipo (fonte tipogr&aacute;fica) em seu blog Wordpress</strong>&#8220;, leia <a title="Saiba a diferen&ccedil;a entre fonte, tipo, tipologia e tipografia." href="http://www.desenvolvimentoparaweb.com/design/tipografia-com-foco-ao-web-design-parte-1-consideracoes-sobre-fonte-tipo-tipologia-e-tipografia/">algumas considera&ccedil;&otilde;es sobre fonte, tipo, tipologia e tipografia</a>.</p>
<h3>Trocando os tipos dos t&iacute;tulos do blog com Facelift</h3>
<p>Dentre as diversas op&ccedil;&otilde;es de <em>scripts</em> e maneiras para usar qualquer tipo (fonte tipogr&aacute;fica) em <em>web sites</em>, indico o <a title="Visitar o site oficial do Facelift." href="http://facelift.mawhorter.net/">Facelift Image Replacement</a> que, segundo diversos testes que fiz, mostra-se muito simples de instalar e produz resultados eficientes, <strong>trocando os textos de qualquer parte do <em>site</em></strong> para qualquer tipo que se queira.</p>
<p>O <strong>Facelift</strong> faz sua &#8220;m&aacute;gica&#8221; <strong>criando imagens em tempo real</strong> de textos de qualquer lugar de uma p&aacute;gina <em>web</em> que voc&ecirc; queira (e respeita o CSS especificado para o elemento, inclusive); e faz esta &#8220;reposi&ccedil;&atilde;o de tipos&#8221; utilizando o arquivo no formato de fontes, como .<strong>ttf</strong> ou <strong>.otf</strong>. Quer dizer, ele atua &#8211; com a licen&ccedil;a do trocadilho &#8211; &#8220;<strong>direto na fonte</strong>&#8220;!  ;-)</p>
<p>Isso sem falar em sua compatibilidade com os <em>frameworks</em> <a title="P&aacute;gina oficial do jQuery." href="http://jquery.com/">jQuery</a>, <a title="P&aacute;gina oficial do Prototype." href="http://www.prototypejs.org/">Prototye</a>, <a title="P&aacute;gina oficial do Scriptaculous." href="http://script.aculo.us/">Scriptaculous</a> e <a title="P&aacute;gina oficial do MooTools." href="http://mootools.net/">MooTools</a> e com a grande vantagem de ser ideal para garantir a acessibilidade do <em>blog</em>, j&aacute; que, se a exibi&ccedil;&atilde;o de imagens estiver desabilitada, o &#8220;texto puro&#8221; aparece normalmente.</p>
<h3>Instalando o Facelift em seu blog Wordpress</h3>
<p>O primeiro passo &eacute; acessar a <a title="Fazer download do Facelift." href="http://facelift.mawhorter.net/download/">p&aacute;gina de downloads do Facelift</a> para baixar sua &uacute;ltima vers&atilde;o. Para o caso do Wordpress, voc&ecirc; tem duas op&ccedil;&otilde;es:</p>
<ol>
<li><strong>Instalar em uma pasta no tema que voc&ecirc; usa.</strong> Dessa forma, o script fica vinculado a seu atual tema e, praticamente, far&aacute; parte deste (se voc&ecirc; mudar o tema, n&atilde;o mais ter&aacute; o Facelift funcionando).</li>
<li><strong>Instalar em uma pasta independente de temas.</strong> Instalando o Facelift em uma pasta independente, ele continua funcionando independentemente de voc&ecirc; alterar temas ou n&atilde;o (o &uacute;nico &#8220;por&eacute;m&#8221; &eacute; para algumas linhas de c&oacute;digo que devem ser inseridas, caso haja a troca).</li>
</ol>
<p>Ent&atilde;o, segundo a abordagem de instalar o <strong>Facelift</strong> na pasta do pr&oacute;prio tema, sugiro que seja uma pasta &#8220;js&#8221; ou &#8220;javasript&#8221;. Ent&atilde;o, v&aacute; l&aacute; e crie uma pasta &#8220;js&#8221; na pasta de seu tema para dar prosseguimento &agrave; instala&ccedil;&atilde;o do Facelift.</p>
<p>Depois disso, descompacte o Facelift nesta pasta remota &#8220;js&#8221; que acabou de criar. Uma observa&ccedil;&atilde;o: a pasta raiz do Facelift vem com a estrutura &#8220;<strong>facelift-[vers&atilde;o]</strong>&#8220;; pessoalmente, gosto de retirar o n&uacute;mero da vers&atilde;o para manter a coisa enxuta (somente &#8220;facelift&#8221;); se voc&ecirc; n&atilde;o quiser fazer isso, tudo bem, mas fique atento aos c&oacute;digos de chamada ao Facelift que ser&atilde;o mostrados posteriormente.</p>
<h3>Configurando o Facelift para usar qualquer tipo em seu blog Wordpress</h3>
<p>Coloque na pasta &#8220;<strong>fonts</strong>&#8221; o arquivo do tipo que voc&ecirc; vai usar. Ent&atilde;o, configure o arquivo <span class="code"><strong>config-flir.php</strong>. V&aacute;, l&aacute;, e altere o que for necess&aacute;rio &#8211; o arquivo &eacute; bem comentado, n&atilde;o se preocupe.</span></p>
<p>Depois de devidamente instalado e configurado, &eacute; hora de chamar os arquivos necess&aacute;rios ao funcionamento do Facelift e <strong>usar qualquer fonte tipogr&aacute;fica no blog</strong>! O primeiro passo &eacute; &#8220;chamar&#8221; o corretamente para que se possa usufruir de seus benef&iacute;cios.</p>
<p>&Eacute; poss&iacute;vel inserir chamadas a <em>javascript</em> no <em>head</em> ou <em>body</em> de documentos <em>web</em>. O indicado &eacute; antes de se fechar a <em>tag</em> <strong>&lt;/body&gt;</strong>, pois evita &#8220;travar&#8221; o carregamento da p&aacute;gina e o <em>script</em> s&oacute; &eacute; requisitado quando todos os outros elementos da p&aacute;gina j&aacute; foram carregados. Ent&atilde;o, vamos chamar o <em>javascript</em> do face lift antes de fechar o corpo do documento (<strong>&lt;/body&gt;</strong>), o que, provavelmente, deve estar no arquivo <strong>footer.php</strong> de seu tema Wordpress.</p>
<p>O &#8220;macete&#8221; &eacute; chamar o javascript atrav&eacute;s de PHP (especificando o local em que se encontra a pasta raiz do <em>script</em>, segundo indicado na <a title="Ler, em ingl&ecirc;s, a documenta&ccedil;&atilde;o oficial do Facelift." href="http://facelift.mawhorter.net/doc/">documenta&ccedil;&atilde;o oficial do Facelift</a>), j&aacute; que ser&aacute; preciso identificar o diret&oacute;rio onde ele se encontra utilizando <a title="Mais informa&ccedil;&otilde;es sobre a fun&ccedil;&atilde;o get_bloginfo." href="http://codex.wordpress.org/Template_Tags/get_bloginfo">get_bloginfo()</a>.</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'&lt;script type=&quot;text/javascript&quot; src=&quot;'</span> <span style="color: #339933;">.</span> get_bloginfo<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'template_directory'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'/js/facelift/flir.js&quot;&gt;;&lt;/script&gt;'</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>
<p>Depois, &eacute; preciso iniciar o Facelifit e especificar para quais elementos haver&aacute; substitui&ccedil;&atilde;o de tipos. Uma grande vantagem &eacute; que &eacute; poss&iacute;vel utilizar a sintaxe do jQuery, devido &agrave; compatibilidade nativa que tanto Facelift quanto Wordpress t&ecirc;m do <em>framework</em>! Ent&atilde;o, <a title="Conhe&ccedil;a ferramentas que auxiliam na tarefa de saber a localiza&ccedil;&atilde;o de determinado elemento numa web page." href="http://www.cssnolanche.com.br/css-debug-tools/">sabendo e identificando os elementos da p&aacute;gina</a> que ter&atilde;o tipos personalizados, basta especificar isso no c&oacute;digo (como come&ccedil;amos gerando com PHP, vamos continuar).</p>
<p>O c&oacute;digo final fica assim (no exemplo, altero os t&iacute;tulos secund&aacute;rios da barra lateral):</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'
    &lt;script type=&quot;text/javascript&quot; src=&quot;'</span> <span style="color: #339933;">.</span> get_bloginfo<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'template_directory'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'/js/facelift/flir.js&quot;&gt;&lt;/script&gt;
    &lt;script type=&quot;text/javascript&quot;&gt;
    FLIR.init({path:&quot;'</span> <span style="color: #339933;">.</span> get_bloginfo<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'template_directory'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'/js/facelift/&quot;});
    $(&quot;#sidebar h2&quot;).each( function() { FLIR.replace(this); } );
    &lt;/script&gt;
'</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>
<p>E pronto! Agora seu <em>blog</em> Wordpress pode usar qualquer fonte tipogr&aacute;fica, em qualquer local que voc&ecirc; queira!</p>
<h3>Importantes observa&ccedil;&otilde;es sobre a troca de tipos com o Facelift</h3>
<p>Na verdade, o Facelift pode ser usado em qualquer tipo de <em>site</em> ou <em>blog</em>, seja Wordpress ou n&atilde;o. Entretanto, em fun&ccedil;&atilde;o do peso de imagens &#8211; ainda mais geradas em tempo real &#8211; e performance do <em>blog</em>/<em>site</em>, em geral, &eacute; conveniente que se altere os tipos somente dos t&iacute;tulos e/ou &aacute;reas de destaque.</p>
<p>Importante notar que, como se trata de inser&ccedil;&atilde;o de imagens, caso uma imagem estrapole a largura destinada ao elemento que foi &#8220;substitu&iacute;do&#8221; por ela, <strong>seu <em>layout</em> pode quebrar e/ou a imagem ficar semi-oculta</strong>, impedindo os leitores de a visualizarem por completo.</p>
<p>Portanto, se voc&ecirc; utiliza artigos com t&iacute;tulo curto e/ou tem um espa&ccedil;o &uacute;til para os t&iacute;tulos consider&aacute;vel, use e abuse de tipos personalizados em seu <em>blog</em>/<em>site</em>; do contr&aacute;rio, limite-se a usar os tipos personalizados somente em &aacute;res de destaque ou textos que contenham poucas e pequenas palavras.</p>
<p><strong>&lt;update&gt;</strong><br />
Confiram, tamb&eacute;m, o <em>plugin</em> para WordPress <a href="http://2amlife.com/projects/anyfont">AnyFont</a>.<br />
<strong>&lt;/update&gt;</strong></p>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/design/tipografia-com-foco-ao-web-design-consideracoes-sobre-fonte-tipo-tipologia-e-tipografia/" title="Tipografia com foco ao web design: considerações sobre fonte, tipo, tipologia e tipografia">Tipografia com foco ao web design: considerações sobre fonte, tipo, tipologia e tipografia</a></li><li><a href="http://desenvolvimentoparaweb.com/php/dicas-para-otimizar-codigos-php/" title="Dicas para otimizar códigos PHP">Dicas para otimizar códigos PHP</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/javascript/como-usar-qualquer-tipo-fonte-tipografica-em-seu-blog-wordpress/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Diferen&#231;as entre IDs e Classes</title>
		<link>http://desenvolvimentoparaweb.com/css/diferencas-entre-ids-e-classes/</link>
		<comments>http://desenvolvimentoparaweb.com/css/diferencas-entre-ids-e-classes/#comments</comments>
		<pubDate>Fri, 18 Jul 2008 14:00:50 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[(x)html]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[layout]]></category>
		<guid isPermaLink="false">http://www.desenvolvimentoparaweb.com/?p=202</guid>
		<description><![CDATA[Aprenda a diferen&ccedil;a entre IDs e classes, usados em XHTML, CSS e javascript. Saber a diferen&ccedil;a entre classes e IDs evita erros b&aacute;sicos e permite desenvolver sites melhores]]></description>
			<content:encoded><![CDATA[<p>Principalmente quando no in&iacute;cio dos estudos sobre desenvolvimento para <em>web</em>, &eacute; comum haver confus&otilde;es entre IDs e Classes, t&atilde;o utilizados e necess&aacute;rios em XHTML, CSS e Javascript. V&aacute;rios tutoriais na <em>internet</em> explicam alguns pontos b&aacute;sicos e d&atilde;o certas orienta&ccedil;&otilde;es, mas nada muito aprofundado e esclarecedor. O resultado: as d&uacute;vidas persistem e a diferen&ccedil;a entre ID e Classe ainda n&atilde;o &eacute; &#8220;desvendada&#8221;. Com este artigo este &#8220;mist&eacute;rio&#8221; chega ao fim! ;-)</p>
<div class="artigo-traduzido">Este &eacute; um artigo traduzido do original &#8220;<a title="Ler o artigo original The Difference Between ID and Class." href="http://css-tricks.com/the-difference-between-id-and-class/">The Difference Between ID and Class</a>&#8220;, do blog <a title="Visitar o CSS-Tricks." href="http://css-tricks.com/">CSS-Tricks</a>, e a tradu&ccedil;&atilde;o foi feita com autoriza&ccedil;&atilde;o do <a title="Visitar o web site de Chris Coyier." href="http://chriscoyier.net/">autor</a>.</div>
<h3>IDs e classes s&atilde;o &#8220;anz&oacute;is&#8221;</h3>
<p>Precisamos de formas de descrever conte&uacute;dos em documentos HTML / XHTML. Os elementos b&aacute;sicos como &lt;h1&gt;, &lt;p&gt; e &lt;ul&gt; frequentemente fazer o trabalho, mas o conjunto b&aacute;sico de <em>tags</em> n&atilde;o abragen todas as possibilidades de elementos de p&aacute;gina ou escolhas de <em>layout</em>. Para isso, precisamos de <strong>IDs</strong> e <strong>Classes</strong>.</p>
<p>Por exemplo &lt;ul id=&#8221;nav&#8221;&gt;, isso d&aacute; a oportunidade de visar especificamente esta lista, ent&atilde;o h&aacute; uma maneira de manipular esta lista exclusivamente em rela&ccedil;&atilde;o a outras listas n&atilde;o-ordenadas da p&aacute;gina. Ou talvez tiv&eacute;ssemos uma se&ccedil;&atilde;o na p&aacute;gina que n&atilde;o possui uma <em>tag</em> relevante para signifcar, por exemplo, um rodap&eacute;, onde poder&iacute;amos fazer algo como &lt;div id=&#8221;footer&#8221;&gt;. Ou talvez tenhamos <em>boxes</em> na barra lateral para manter o conte&uacute;do separado de alguma forma: &lt;div class=&#8221;sidebar-box&#8221;&gt;.</p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-203" title="Met&aacute;fora de classe XHTML em div: anzol." src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2008/07/metafora-div-classe-anzol-xhtml.jpg" alt="Met&aacute;fora de classe XHTML em div: anzol." width="500" height="132" /></p>
<p>Esses IDs e classes s&atilde;o os &#8220;anz&oacute;is&#8221; que precisamos fazer na marca&ccedil;&atilde;o para colocarmos as m&atilde;os neles. CSS obviamente precisa disso para que possa fazer seletores e montar folhas de estilos, mas outras linguagens <em>web</em>, como <em>javascript</em>, tamb&eacute;m dependem deles. Mas quais as diferen&ccedil;as entre IDs e classes?</p>
<h3>IDs s&atilde;o &uacute;nicos</h3>
<ul>
<li>Cada elemento pode ter <strong>apenas um</strong> ID;</li>
<li>Cada p&aacute;gina pode ter apenas <strong>um elemento</strong> com aquele ID.</li>
</ul>
<p>Quando se est&aacute; aprendendo sobre isso, &eacute; comum ouvir que s&oacute; se deve usar IDs uma vez, mas &eacute; poss&iacute;vel usar uma classe v&aacute;rias vezes. Basicamente, isso entra num ouvido e sai no outro, porque soa mais como uma &#8220;regrinha&#8221; que algo realmente importante. Se voc&ecirc; trata somente com HTML / CSS, isso pode acontecer com voc&ecirc;, tamb&eacute;m, porque eles realmente n&atilde;o parecem fazer nada de diferente.</p>
<p>Aqui vai uma: <em>seu c&oacute;digo n&atilde;o vai passar pelo validador se voc&ecirc; usar o mesmo ID em mais de um elemento</em>. Valida&ccedil;&atilde;o deve ser importante para todos n&oacute;s, de modo que, por si s&oacute;, &eacute; algo muito importante. Adiante, mais raz&otilde;es pelas quais um ID deve ser &uacute;nico.</p>
<h3>Classes n&atilde;o s&atilde;o &uacute;nicas</h3>
<ul>
<li>Voc&ecirc; pode usar a <strong>mesma classe</strong> para v&aacute;rios elementos;</li>
<li>Voc&ecirc; pode usar <strong>v&aacute;rias classes para um mesmo elemento</strong>.</li>
</ul>
<p>Qualquer informa&ccedil;&atilde;o de estilo que precise ser aplicada a m&uacute;ltiplos elementos em uma p&aacute;gina deve ser feita com uma <strong>classe</strong>. Tomemos como uma exemplo uma p&aacute;gina com v&aacute;rios &#8220;<em>widgets</em>&#8220;:</p>
<div class="wp_syntax"><div class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;widget&quot;</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;widget&quot;</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;widget&quot;</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span></pre></div></div>
<p>Agora, &eacute; poss&iacute;vel usar a mesma classe &#8220;widget&#8221; como gancho para aplicar o mesmo conjunto de estilos para cada um deles. Mas, e se for preciso ter um deles maior que os outros, mas continuar com um estilo que compartilhe dos outros atributos? &Eacute; poss&iacute;vel aplicar mais de uma classe a um elemento:</p>
<div class="wp_syntax"><div class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;widget&quot;</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;widget big&quot;</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;widget&quot;</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span></pre></div></div>
<p>N&atilde;o h&aacute; necessidade de fazer e nomear uma nova classe aqui, apenas colocar o nome da nova classe no atributo <em>class</em>, juntamente com o nome da classe que j&aacute; est&aacute; l&aacute;. As diferentes classes s&atilde;o delimitadas por espa&ccedil;os e a maioria dos navegadores permite quaisquer n&uacute;meros delas (na verdade, &eacute; mais como <em>milhares</em>, o que &eacute; muito mais do que realmente &eacute; preciso).</p>
<h3>N&atilde;o existem padr&otilde;es de IDs e Classes em nenhum navegador</h3>
<p>Colocar um nome de classe ou ID em um elemento, por padr&atilde;o n&atilde;o faz nada a esse elemento.</p>
<p>Isso &eacute; algo que intriga quem &eacute; iniciante. Voc&ecirc; est&aacute; trabalhando em um <em>site</em> e descobre que a aplica&ccedil;&atilde;o de uma classe com um nome em particular resolve um problema que voc&ecirc; tem. Ent&atilde;o voc&ecirc; mexe em outro <em>site</em>, com o mesmo problema, e tenta corrig&iacute;-lo da mesma maneira, usando aquele mesmo nome de classe, pensando que o nome da classe, por si s&oacute;, tem alguma propriedade m&aacute;gica, apenas para descobrir que n&atilde;o funciona assim&#8230;</p>
<p>Classes e IDs n&atilde;o t&ecirc;m qualquer estilo por si mesmos. &Eacute; preciso CSS para orientar e aplicar estilos.</p>
<h3>C&oacute;digos de Barra e N&uacute;meros de S&eacute;rie</h3>
<p style="text-align: center;"><img class="alignnone size-full wp-image-205" title="Exemplos de c&oacute;digo de barra e n&uacute;mero de s&eacute;rie." src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2008/07/codigo-de-barra-numero-de-serie.jpg" alt="Exemplos de c&oacute;digo de barra e n&uacute;mero de s&eacute;rie." width="500" height="132" /></p>
<p>Talvez c&oacute;digos de barra e n&uacute;meros de s&eacute;rie sejam uma boa analogia. Tome um iPod, numa loja. Na embalagem h&aacute; um c&oacute;digo de barras. Ele indica &agrave; loja que produto &eacute; esse; ent&atilde;o, quando &eacute; escaneado, o c&oacute;digo de barras informa exatamente que produto &eacute; aquele e quanto custa. &Eacute; poss&iacute;vel saber at&eacute; sua cor e em qual lugar do armaz&eacute;m ele era mantido. Todos esses iPods t&ecirc;m exatamente o mesmo tipo de c&oacute;digo de barras.</p>
<p>O iPod tem tamb&eacute;m um n&uacute;mero de s&eacute;rie que &eacute; absolutamente &uacute;nico em rela&ccedil;&atilde;o a qualquer outro iPod (ou outro dispositivo) em todo o mundo. O n&uacute;mero de s&eacute;rie n&atilde;o informa o pre&ccedil;o. Poderia, mas para a loja que o vende esta n&atilde;o seria uma maneira eficaz de armazenar e utilizar essa informa&ccedil;&atilde;o. &Eacute; muito mais f&aacute;cil usar um c&oacute;digo de barras porque se, por exemplo, o pre&ccedil;o muda, &eacute; preciso apenas alterar o pre&ccedil;o para aquele c&oacute;digo de barras, e n&atilde;o para cada n&uacute;mero serial do sistema.</p>
<p>Isso &eacute; muito parecido com IDs e Classes. <strong>Informa&ccedil;&otilde;es que s&atilde;o reusadas devem ser mantidas em uma classe e informa&ccedil;&otilde;es que s&atilde;o totalmente &uacute;nicas devem ser mantidas em um ID.</strong></p>
<h3>IDs t&ecirc;m uma funcionalidade especial nos navegadores</h3>
<p>Classes n&atilde;o tem funcionalidades especiais no <em>browser</em>, mas IDs t&ecirc;m um truque muito especial na manga: um &#8220;valor de <em>hash</em>&#8221; para URLs. Se voc&ecirc; tiver um URL como http://seudominio.com#comments, o navegador vai tentar localizar o elemento com o id &#8220;comments&#8221; e vai automaticamente rolar a p&aacute;gina at&eacute; chegar nesse elemento.</p>
<p>&Eacute; importante observar que o <em>browser</em> vai rolar a p&aacute;gina at&eacute; onde quer que o elemento esteja; ent&atilde;o, se houver algo de especial, como uma DIV com barra de rolagem (propriedade CSS <em>overflow</em> com valor &#8220;auto&#8221; ou &#8220;scroll&#8221;), esta barra de rolagem vai ser deslocada &#8211; rolar para baixo -, tamb&eacute;m.</p>
<p>Esta &eacute; uma raz&atilde;o importante sobre o porqu&ecirc; &eacute; importante ter um ID absolutamente &uacute;nico. Com isso, o navegador sabe at&eacute; quando rolar.</p>
<h3>Elementos podem ter ambos, ID e Classes</h3>
<p>Nada para voc&ecirc; quando voc&ecirc; usa ambos, ID e classes em um &uacute;nico elemento. Na verdade, fazer isso na maioria das vezes &eacute; uma boa id&eacute;ia. Tomemos como exemplo o padr&atilde;o de marca&ccedil;&atilde;o para item de lista de um coment&aacute;rio no Wordpress:</p>
<div class="wp_syntax"><div class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">li</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;comment-27299&quot;</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;item&quot;</span>&gt;</span></pre></div></div>
<p>Tem uma classe que foi aplicada que talvez se queira usar para estilizar todos os coment&aacute;rios na p&aacute;gina, mas tamb&eacute;m h&aacute; um &uacute;nico valor de ID (dinamicamente gerado pelo Wordpress). Com isso, &eacute; facilmente poss&iacute;vel fazer um <em>link</em> diretamente a um coment&aacute;rio, em uma p&aacute;gina, em especial.</p>
<h3>CSS n&atilde;o se importa</h3>
<p>Quanto ao CSS, <strong>n&atilde;o h&aacute; nada que voc&ecirc; possa fazer com um ID que n&atilde;o possa fazer com uma Classe e vice-versa</strong>. &Agrave;s vezes, quando se est&aacute; iniciando no estudo de CSS e se tem um problema, tenta-se alternar entre usar ID ou usar Classe. O CSS n&atilde;o se importa.</p>
<h3>Javascript se importa</h3>
<p>Aqueles que mexem com <em>javascript</em> provavelmente j&aacute; est&atilde;o mais em sintonia entre as diferen&ccedil;as entre as Classes e IDs. <em>Javascript</em> depende da exist&ecirc;ncia de um elemento de p&aacute;gina com ID &uacute;nico, ou ent&atilde;o a comumente utilizada fun&ccedil;&atilde;o <a title="Mais sobre getElementById, no W3Schools." href="http://www.w3schools.com/HTMLDOM/met_doc_getelementbyid.asp">getElementById</a> n&atilde;o seria confi&aacute;vel. Aqueles acostumados com <a title="Todos artigos sobre jQuery do desenvolvimento para web." href="http://www.desenvolvimentoparaweb.com/category/jquery/">jQuery</a> sabem o qu&atilde;o f&aacute;cil &eacute; adicionar e remover classes de elementos de p&aacute;gina. &Eacute; uma fun&ccedil;&atilde;o nativa no jQuery. Veja que tal fun&ccedil;&atilde;o n&atilde;o existe para IDs. N&atilde;o &eacute; responsabilidade do <em>javascript</em> manipular estes valores, porque ele causaria mais problemas que seria &uacute;til&#8230;</p>
<h3>Se voc&ecirc; n&atilde;o precisa deles, n&atilde;o os use</h3>
<p>Como voc&ecirc; pode ver, classes e IDs s&atilde;o muito importantes e n&oacute;s os utilizamos todos os dias para estilizar p&aacute;ginas e manipular aquilo que &eacute; preciso. Entretanto, voc&ecirc; deve us&aacute;-los com crit&eacute;rio e semanticamente.</p>
<p>Isto significa evitar coisas do tipo:</p>
<div class="wp_syntax"><div class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">a</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;http://css-tricks.com&quot;</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;link&quot;</span>&gt;</span>CSS-Tricks.com<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">a</span>&gt;</span></pre></div></div>
<p>J&aacute; sabemos: este elemento &eacute; um <em>link</em>, &eacute; um elemento &acirc;ncora. N&atilde;o h&aacute; nada de especial aqui a ponto de ser preciso especificar uma classe, j&aacute; que &eacute; poss&iacute;vel aplicar o estilo na pr&oacute;pria tag (&#8220;a&#8221;).</p>
<p>Evite este tipo de coisa, tamb&eacute;m:</p>
<div class="wp_syntax"><div class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;coluna-direita&quot;</span>&gt;</span></pre></div></div>
<p>O ID &eacute; corretamente utilizado aqui, j&aacute; que, provavelmente, a p&aacute;gina ter&aacute; somente uma &uacute;nica coluna da direita, mas o nome &eacute; inadequado. Descreva o contexto do elemento, n&atilde;o onde est&aacute; ou como se parece. Um ID &#8220;barra-lateral&#8221; seria melhor.</p>
<h3>Microformatos s&atilde;o apenas nomes espec&iacute;ficos de classes</h3>
<p>Pensa que <a title="P&aacute;gina oficial dos microformatos." href="http://microformats.org/">microformatos</a> &eacute; dif&iacute;cil para voc&ecirc;? Microformato &eacute; apenas marca&ccedil;&atilde;o regular que faz uso de nomes de classes padronizados para a informa&ccedil;&atilde;o que cont&ecirc;m. Veja este vCard:</p>
<div class="wp_syntax"><div class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;vcard&quot;</span>&gt;</span>
  <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">a</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;fn org url&quot;</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;http://www.commerce.net/&quot;</span>&gt;</span>CommerceNet<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">a</span>&gt;</span>
  <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;adr&quot;</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">span</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;type&quot;</span>&gt;</span>Work<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">span</span>&gt;</span>:
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;street-address&quot;</span>&gt;</span>169 University Avenue<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">span</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;locality&quot;</span>&gt;</span>Palo Alto<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">span</span>&gt;</span>,
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">abbr</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;region&quot;</span> <span style="color: #000066;">title</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;California&quot;</span>&gt;</span>CA<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">abbr</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">span</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;postal-code&quot;</span>&gt;</span>94301<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">span</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;country-name&quot;</span>&gt;</span>USA<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
  <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
  <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;tel&quot;</span>&gt;</span>
   <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">span</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;type&quot;</span>&gt;</span>Work<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">span</span>&gt;</span> +1-650-289-4040
  <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
  <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;tel&quot;</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">span</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;type&quot;</span>&gt;</span>Fax<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">span</span>&gt;</span> +1-650-289-4041
  <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
  <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span>&gt;</span>Email:
   <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">span</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;email&quot;</span>&gt;</span>info@commerce.net<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">span</span>&gt;</span>
  <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span></pre></div></div>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/css/centralizar-suas-paginas-web-com-css-como-deixar-o-site-sempre-no-centro-com-folhas-de-estilo/" title="Centralizar suas páginas web com CSS: como deixar o site sempre no centro com folhas de estilo">Centralizar suas páginas web com CSS: como deixar o site sempre no centro com folhas de estilo</a></li><li><a href="http://desenvolvimentoparaweb.com/css/css-float-consideracoes-dicas-e-macetes-para-bons-layouts-na-web/" title="CSS float: considerações, dicas e macetes para bons layouts na web">CSS float: considerações, dicas e macetes para bons layouts na web</a></li><li><a href="http://desenvolvimentoparaweb.com/css/css-minimo/" title="CSS mínimo">CSS mínimo</a></li><li><a href="http://desenvolvimentoparaweb.com/seo/erros-comuns-desenvolvimento-web-campanhas-seo/" title="Erros comuns em desenvolvimento web para campanhas de SEO">Erros comuns em desenvolvimento web para campanhas de SEO</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/melhorando-interacao-formularios-busca/" title="Melhorando a interação em formulários de busca">Melhorando a interação em formulários de busca</a></li><li><a href="http://desenvolvimentoparaweb.com/xhtml/textarea-dicas-truques-textarea/" title="Textarea: dicas e truques que você sempre quis saber">Textarea: dicas e truques que você sempre quis saber</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/8-maneiras-de-melhorar-a-performance-de-um-site/" title="8 maneiras de melhorar a performance de um site">8 maneiras de melhorar a performance de um site</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/15-comandos-sql-wordpress/" title="15 fantásticos comandos SQL para WordPress">15 fantásticos comandos SQL para WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/usabilidade/recursos-usabilidade/" title="Recursos de usabilidade grátis">Recursos de usabilidade grátis</a></li><li><a href="http://desenvolvimentoparaweb.com/css/rolagem-fundo-transparente-css/" title="Rolagem com fundo transparente com CSS">Rolagem com fundo transparente com CSS</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/css/diferencas-entre-ids-e-classes/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>ie7-js: um javascript para fazer o Internet Explorer renderizar melhor</title>
		<link>http://desenvolvimentoparaweb.com/indicacoes/ie7-js-um-javascript-para-fazer-o-internet-explorer-renderizar-melhor/</link>
		<comments>http://desenvolvimentoparaweb.com/indicacoes/ie7-js-um-javascript-para-fazer-o-internet-explorer-renderizar-melhor/#comments</comments>
		<pubDate>Tue, 15 Jan 2008 20:06:03 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[indicações]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[IE]]></category>
		<category><![CDATA[projetos]]></category>
		<guid isPermaLink="false">http://www.desenvolvimentoparaweb.com/indicacoes/ie7-js-um-javascript-para-fazer-o-internet-explorer-renderizar-melhor/</guid>
		<description><![CDATA[Script para fazer Internet Explorer acima da vers&atilde;o 5 permitir imagens PNG transparentes]]></description>
			<content:encoded><![CDATA[<p><strong>ie7-js</strong> &eacute; um arquivo <span lang="en"><em>javascript</em></span> que faz com que o <span lang="en">Internet Explorer</span> se comporte como se fosse um &#8220;<span lang="en"><em>standards compliant browser</em></span>&#8220;, quer dizer, as vers&otilde;es do IE a partir da 5, at&eacute; a 6, comportando-se como IE 7, <strong>corrigindo uma s&eacute;rie de erros de renderiza&ccedil;&atilde;o</strong> presentes neste famigerado &#8211; e, por alguns, n&atilde;o considerado &#8211; <em>browser</em>.</p>
<p>&Eacute; bem simples: basta inserir o <span lang="en"><em>script</em></span> nas p&aacute;ginas que deseja que sejam renderizadas nos IEs 5-6 <strong>como se fossem IE 7</strong>! Provavelmente, ser&atilde;o em todas, n&atilde;o &eacute;? H&aacute;, tamb&eacute;m, uma <span lang="en"><em>script</em></span> para renderiza&ccedil;&atilde;o conforme <strong><span lang="en">Internet Explorer</span> 8</strong>.</p>
<div class="atencao">Na renderiza&ccedil;&atilde;o de p&aacute;ginas <span lang="en"><em>web</em></span>, o navegador vai lendo linha a linha; quando se depara com uma chamada a <span lang="en"><em>javascript</em></span> externa (que &eacute; o recomendado, por motivos de <strong>separa&ccedil;&atilde;o do desenvolvimento em camadas</strong>), a renderiza&ccedil;&atilde;o &eacute; interrompida at&eacute; que o <span lang="en"><em>script</em></span> esteja <strong>totalmente carregado</strong>.</p>
<p>Tendo isso em mente, deve-se, na hora de inserir um <span lang="en"><em>javascript</em></span>, <strong>escolher com cuidado</strong> se este ser&aacute; chamado logo no cabe&ccedil;alho do documento (<span lang="en"><em>head</em></span>) ou no fim de toda a p&aacute;gina (antes de fechar a <span lang="en"><em>tag &#8220;body&#8221;</em></span>). Dependendo de o qu&ecirc; o <span lang="en"><em>script</em></span> faz e da necessidade em vista, &eacute; desaconselh&aacute;vel que se o chame logo no come&ccedil;o da p&aacute;gina; noutras vezes, &eacute; imprescind&iacute;vel!</p>
<p>Esse &eacute; o caso do <a href="http://code.google.com/p/ie7-js/">ie7-js</a>, quer dizer, deve-se cham&aacute;-lo no cabe&ccedil;alho do documento, a fim de que seus efeitos sejam postos em pr&aacute;tica o quanto antes e as p&aacute;ginas sejam renderizadas conforme o <span lang="en">Internet Explorer</span> 7<strong>!</strong></div>
<p>Al&eacute;m desta maravilha de alterar a renderiza&ccedil;&atilde;o das p&aacute;ginas, o <span lang="en"><em>javascript</em></span> tamb&eacute;m prov&ecirc; a funcionalidade de colocar <strong>transparentes</strong> arquivos PNG em vers&otilde;es anteriores a 7 do IE. Mas h&aacute; uma condi&ccedil;&atilde;o para isso&#8230; N&atilde;o deixe de visitar a <a href="http://code.google.com/p/ie7-js/">p&aacute;gina oficial do ie7-js</a><span lang="en"><em> </em></span> para saber mais a respeito!</p>
<p>E um &uacute;ltimo lembrete: trata-se de um <span lang="en"><em>javascript</em></span>, lembrem-se bem disso; portanto, <strong>nada de negligenciar os testes nas vers&otilde;es anteriores do Internet Explorer!</strong> Afinal, nunca se sabe se o visitante vai estar com o <span lang="en"><em>javascript</em></span> habilitado, ou n&atilde;o!</p>
<div class="link"><a title="Visitar a p&aacute;gina do projeto e baixar o script." href="http://code.google.com/p/ie7-js/">P&aacute;gina do projeto ie7-js</a></div>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/jquery/melhorando-interacao-formularios-busca/" title="Melhorando a interação em formulários de busca">Melhorando a interação em formulários de busca</a></li><li><a href="http://desenvolvimentoparaweb.com/php/urls-amigaveis-slug-a-wordpress/" title="URLs amigáveis (slug) à WordPress">URLs amigáveis (slug) à WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/javascript/melhores-editores-wysiwyg-para-seu-projeto/" title="Melhores editores WYSIWYG para seu projeto">Melhores editores WYSIWYG para seu projeto</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/8-dicas-fazer-codigos-melhores-jquery/" title="8 dicas para fazer códigos melhores com jQuery">8 dicas para fazer códigos melhores com jQuery</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/quando-o-cliente-pensa-que-sabe-mais/" title="Quando o cliente (pensa que) sabe mais">Quando o cliente (pensa que) sabe mais</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/30-extensoes-para-firefox-que-vao-mudar-sua-vida-na-web-para-melhor/" title="30 extensões para Firefox que vão mudar sua vida na web (para melhor)">30 extensões para Firefox que vão mudar sua vida na web (para melhor)</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/como-montar-um-portfolio-sem-ter-clientes/" title="Como montar um portfolio sem ter clientes">Como montar um portfolio sem ter clientes</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/a-melhor-lista-de-plugins-para-jquery-do-mundo/" title="A melhor lista de plugins para jQuery do mundo!">A melhor lista de plugins para jQuery do mundo!</a></li><li><a href="http://desenvolvimentoparaweb.com/indicacoes/prism/" title="Prism">Prism</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/jquery-apresentacao-introducao/" title="jQuery: apresentação">jQuery: apresentação</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/indicacoes/ie7-js-um-javascript-para-fazer-o-internet-explorer-renderizar-melhor/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
