<?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>Mateus Souza - Webdesigner &#187; CSS</title> <atom:link href="http://www.mateussouza.com/blog/categoria/css/feed" rel="self" type="application/rss+xml" /><link>http://www.mateussouza.com</link> <description>Portfólio Online e blog com vários artigos sobre desenvolvimento web, tutorias jQuery, Wordpress, PHP, CSS e muito mais...</description> <lastBuildDate>Fri, 10 Sep 2010 12:42:01 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.1-alpha</generator> <item><title>Prosseguindo com CSS3 &#8211; Bordas e Sombras</title><link>http://www.mateussouza.com/blog/css/prosseguindo-com-css3-bordas-e-sombras</link> <comments>http://www.mateussouza.com/blog/css/prosseguindo-com-css3-bordas-e-sombras#comments</comments> <pubDate>Wed, 21 Jul 2010 15:25:11 +0000</pubDate> <dc:creator>Mateus Souza</dc:creator> <category><![CDATA[CSS]]></category><guid
isPermaLink="false">http://www.mateussouza.com/?p=1161</guid> <description><![CDATA[Seguindo com a série de posts sobre CSS3, hoje vamos falar sobre bordas e sombra(border e shadow em inglês) com CSS3, mais especificamente falaremos sobre: border-color border-image border-radius box-shadow Se você não viu o post anterior a este, é bom ver agora : Iniciando com CSS3 A partir de agora os tutoriais desta série serão feitos em [...]]]></description> <content:encoded><![CDATA[<p><a
title="Ver post completo" href="http://www.mateussouza.com/?p=1161"><img
class="aligncenter size-full wp-image-1296" title="css3-border-radius-border-image-box-shadow" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2010/07/css3-border-radius-border-image-box-shadow.jpg" alt="CSS 3: border-radius | border-image | box-shadow" width="680" height="200" /></a></p><p>Seguindo com a série de posts sobre CSS3, hoje vamos falar sobre bordas e sombra(border e shadow em inglês) com CSS3, mais especificamente falaremos sobre:</p><ul><li>border-color</li><li>border-image</li><li>border-radius</li><li>box-shadow</li></ul><p>Se você não viu o post anterior a este, é bom ver agora :</p><p><a
title="Link para Iniciando com CSS3" href="http://www.mateussouza.com/blog/css/iniciando-com-css3">Iniciando com CSS3</a></p><p>A partir de agora os tutoriais desta série serão feitos em HTML5 e CSS3, então <strong>pare de usar Internet Explorer &lt; 9</strong>. Se você ainda não conhece os seletores em CSS3, veja o <a
title="Link para Iniciando com CSS3" href="http://www.mateussouza.com/blog/css/iniciando-com-css3">artigo anterior</a>.  Algumas propriedades só funcionam em determinados browsers, mais quando isso ocorrer vou informar <img
src='http://www.mateussouza.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' title="Prosseguindo com CSS3   Bordas e Sombras" /> .<br
/> <span
id="more-1161"></span><br
/> Para não ficar perdido na sintax de cada propriedade, tente &#8220;decorar&#8221; esta pequena legenda abaixo:</p><p><strong>[]</strong> &#8211; propriedade variante, ou seja, pode se X ou Y.</p><p><strong>[]?</strong> &#8211; propriedade opcional.</p><p><strong>|</strong> ou <strong>||</strong> &#8211; que dizer <em>ou</em>. Exemplo: X || Y (x ou y).</p><p><strong>&lt;&gt;</strong> &#8211; é um valor definido pelo desenvolvedor &#8211; você.</p><p><strong>{}</strong> &#8211;  geralmente é o número de vezes que se deve usar um determinado valor. Exemplo left{4}, seria <em>left left left left.</em></p><h3>Border-colors</h3><p>Define a cor da borda. Neste caso <strong>as cores</strong> da borda.</p><div
class="alerta amarelo"><strong>Somente para Firefox</strong></div><p><strong>Sintax</strong>: -moz-border-[top | bottom | left | right]-colors: [&lt;cor&gt;]* &lt;cor&gt; | none</p><p>Antes que atirem pedras em mim falando que border-color funciona em todos os navegadores, lembre-se que estamos falando de <strong>CSS3 </strong>e border-color<strong>s</strong> está no plural &#8211; não border-color.  Sendo assim, essa novidade só funciona no Firefox (e demais feitos com a mesma engineer &#8211; Gecko) :</p><pre class="brush: css;">
div#border-colors{
	background: #CCC;
	padding: 20px;
	border: 10px solid #666;
	-moz-border-bottom-colors: #A2A2A2 #FFEFEF #770000 #4504C1 #016FD5 #10BAD0 #A2A2A2 #FFEFEF #770000 #4504C1;
	-moz-border-top-colors: #300 #600 #700 #800 #900 #A00;
	-moz-border-left-colors: #300 #AAA #222;
	-moz-border-right-colors: #A2A2A2 #FFEFEF #770000 #4504C1 #016FD5 #10BAD0;
}
</pre><p>O segredo por trás dessa propriedade é o tamanho &#8211; width &#8211; da borda e o n° de cores. Por exemplo, se eu tenho <strong>5px de width</strong>, logo é &#8220;bom&#8221; eu usar cinco cores (<strong>#111 #222 #333 #444 #555</strong>). Disse &#8220;bom&#8221; porque você pode sim usar mais cores,  só que a bagunça nem você vai entender, se é que você esta entendendo agora <img
src='http://www.mateussouza.com/wordpress/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' title="Prosseguindo com CSS3   Bordas e Sombras" /> .</p><p>As cores sempre começam de fora para dentro, ou seja <strong>#111</strong> será a primeira cor, ou a cor mais distante do elemento e <strong>#555</strong> será a última, ou a cor mais próxima (colada) ao elemento.  Se você usar 4px de width, com somente 2 cores(#F00 e #CCC), o primeiro pixel (1px) será na cor #F00 e os demais (3px) na cor #CCC.</p><p><a
class="tooltip" title="Não vai esquecer que só funciona no firefox" href="http://demo.mateussouza.com/css3-parte2/border-colors.html" target="_blank">Veja o exemplo</a> | <a
title="Mais detalhes sobre Border-colors" href="https://developer.mozilla.org/en/CSS/-moz-border-top-colors" target="_blank">Mais detalhes</a></p><h3>Border-Image</h3><p>Basicamente usa uma imagem no lugar da cor em uma borda. Funciona em todos os navegadores com suporte a CSS3.</p><p><strong>Sintax</strong>: [-moz- | -webkti-]?border-image: <var>&lt;uri&gt;</var> [<var>&lt;numero&gt;</var> | <var>&lt;porcentagem&gt;</var>]{4} [ / <var>&lt;tamanho&gt;</var>{1,4} ]? [stretch | repeat | round]{0,2} | none</p><pre class="brush: css;">
h3 + div{
	color: #000;
	padding: 20px;
	border: 10px solid #666;
	border-width:15px;
	border-image: url(borda.png) 27 27 27 27 round round;
	-moz-border-image: url(borda.png) 27 27 27 27 round round;
	-webkit-border-image: url(borda.png) 27 27 27 27 round round;
}
</pre><p>Na sintax primeiramente temos a url da imagem e depois quatro números. Estes 4 números ou porcentagens, são os valores que especificam qual parte da imagem será usada para a borda, ou seja, qual parte da imagem será cortada para criar a borda. Por exemplo, tenho uma imagem e quero corta 5px dela em todos os lados, para isto eu usaria:<em> 5 5 5 5. </em>Os 4 números são respectivamente <em>top, right, bottom </em>e <em>left </em>. Os números são valores em px &#8211; <strong>somente px</strong>, você não pode colocar <em>5px</em> ou <em>5em</em> por exemplo, só é aceito 5(ou seja somente NUMEROS!!!) ou em porcentagem &#8211; ai teria de ser 5%.</p><p>Opcionalmente também podemos definir o tamanho da borda para cada lado. Para isso usamos a barra &#8220;<strong>/</strong>&#8220;, seguida das quatro medidas &#8211; uma para cada lado &#8211; que podem ser em qualquer formato,<em> px, em, pt.</em>..apenas temos que lembrar de usar &#8220;/&#8221; para &#8220;dizer&#8221; ao CSS que estes valores são para o tamanho da borda, ou melhor dizendo <em>border-width</em>.</p><p>Depois, vem o modo como a imagem será tratada. Os valores são:</p><p><strong>stretch</strong> &#8211; a imagem gerada é redimensionada (de qualquer forma) para se encaixar, distorcendo a imagem.</p><p><strong>round</strong> &#8211; redimensiona a imagem (proporcionalmente) para que se encaixe na área, também acontece a repetição da imagem mais não em partes, se vai repetir repete a imagem por inteiro, sem corta-la.</p><p><strong>repeat</strong> &#8211; sem segredo&#8230;repete a imagem até que se encaixe na área, mais ou menos como acontece com <em>background-repeat</em>.  Uma boa prática é definir uma borda &#8220;reserva&#8221;, ou seja, a cor de borda e usar imagens sem transparência&#8230;assim se ocorrer algum erro no <em>border-image</em> a borda &#8220;reserva&#8221; entra em cena.</p><p>Alguns pontos interessantes:</p><ul><li>Não é bem uma borda com imagem, é mais um segundo backgrund, só que mais complicado.</li><li>Webkit trata <em>border-image </em>um pouco diferente dos demais, então pode ficar complicado conseguir a mesmo resultado em todos os navegadores.</li><li>Em alguns casos, o Opera também faz o tratamento diferente do esperado.</li><li>Opera não rendeniza <em>border-image</em> se tive a barra &#8220;/&#8221; com o tamanho da borda. So não usar os valores opcionais (e a barra) que resolver o problema <img
src='http://www.mateussouza.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' title="Prosseguindo com CSS3   Bordas e Sombras" /> .</li><li>Eu não uso <em>border-image</em> nem me pagando!!! Mas esta ai pra quem quer aprender e usar.</li></ul><p><a
title="Demonstração para border-image" href="http://demo.mateussouza.com/css3-parte2/border-image.html">Veja o exemplo</a> | <a
title="Mais detalhes sobre Border Image - W3C " href="http://www.w3.org/TR/2005/WD-css3-background-20050216/#the-border-image" target="_blank">Mais detalhes</a></p><h3>Border-Radius</h3><p>Este é o que mais uso. Faz com que a borda fique redonda (mesmo que não haja <em>border</em> no elemento).</p><p><strong>Sintax: </strong>[-moz-|-webkit-]?border-radius: [<var>&lt;comprimento&gt;</var> | <var>&lt;porcentagem&gt;</var> ]{1,4} [ / [ <var>&lt;comprimento&gt;</var> | <var>&lt;porcentagem&gt;</var> ]{1,4}?</p><pre class="brush: css;">
div:first-child{
	background: #EEE;
	border: 1px solid #CCC;
	padding: 20px;
	margin: 10px;
	border-radius: 25px 0 0 25px;
	-moz-border-radius: 25px 0 0 25px;
	-webkit-border-radius: 25px 0 0 25px;
}
</pre><p>Usar <em>border-radius</em> é tão simples quanto definir <em>margin</em> ou <em>padding</em> a um elemento. Obviamente são quatro posições disponíveis para &#8220;arredondamento&#8221;. As posições são divididas em top (top-left e top-right) e bottom (bottom-left e bottom-right). Na ordem certa seria: <em>top-right</em>, <em>bottom-right</em>, <em>bottom-left </em>e<em> top-left.</em></p><p><em></em> Como acontece no <em>border-image</em>, há mais 4 medidas opcionais seguidas pela barra &#8220;/&#8221;. Neste caso as medidas representam um quarto da elipse para cado posição. É um recurso avançado e de difícil entendimento, por isso é importante o domínio da matemática &#8211; mais especificamente elipse &#8211;  para não ter problemas em entender como funciona &#8220;por trás&#8221; o <em>border-radius</em>. Não vou me ater a detalhes aqui para não tornar a leitura cansativa, mais uma vez entendido como funciona a elipse, é só relacionar e fazer alguns testes que você irá compreender rapidamente.</p><p>Se você, por obra do destino (rs) não usar esta propriedade em formato shorthand, precisará &#8220;queimar&#8221; um pouco mais de neurônios para decorar a lista no formato expandido. O chato é que para cada enginer a sintax é diferente, observe:</p><pre class="brush: css;">
/*Mozilla*/
-moz-border-radius-topleft: 4px 2px;
-moz-border-radius-topright: 3px 4px;
-moz-border-radius-bottomright: 6px 2px;
-moz-border-radius-bottomleft: 3px 4px;

/*Webkit*/
-webkit-border-top-left-radius: 4px 2px;
-webkit-border-top-right-radius: 3px 4px;
-webkit-border-bottom-left-radius: 6px 2px;
-webkit-border-bottom-right-radius: 3px 4px;

/*Demais - Webkit é um pouco semelhate a este*/
border-top-left-radius: 4px 2px;
border-top-right-radius: 3px 4px;
border-bottom-left-radius: 6px 2px;
border-bottom-right-radius: 3px 4px;
</pre><p>Neste caso o quarto da elipse passa a ser o segundo valor em cada propriedade.</p><p>Considerações:</p><ul><li>Priorize o formato shorthand.</li><li>Bordas no estilo <em>dashed</em> e <em>dotted</em>, são rendenizados formato sólido &#8211; <em>solid</em>.</li><li>Valores em porcentagem não funcionam no Webkit.</li><li>Webkit não suporta somente um valor para todos os lados, é necessário que use pelo menos 2 valores para funcionar corretamente &#8211; No Chrome funciona, mais no Safari não.</li><li>Em alguns casos pode ser que você não consiga o mesmo resultado no Webkit mesmo usando a sintax corretamente. Para corrigir este problema, no Webkit use as medidas para cada lado em propriedades separadas.</li></ul><p><a
title="Exemplo de Border-radius" href="http://demo.mateussouza.com/css3-parte2/border-radius.html" target="_blank">Veja o exemplo </a>|<a
title="Mais detalhes sobre Border-radius" href="http://www.w3.org/TR/css3-background/#the-border-radius" target="_blank"> Mais detalhes</a></p><h3>Box-shadow</h3><p>A propriedade <em>box-shadow</em> adiciona uma sombra ao elemento, podendo ser por dentro(inset) ou por fora&#8230;É um efeito muito interressante  e de grande utilizade principalmente para performance do site, já que ele substitui imagens.</p><p><strong>Sintax:</strong> [-moz-|-webkit-]?box-shadow:  <var>&lt;sombra&gt;</var> [ , <var>&lt;sombra</var> ]* | none</p><p><var><strong>&lt;sombra&gt;</strong>: </var><span
style="font-family: Consolas, Monaco, 'Courier New', Courier, monospace; line-height: 18px; font-size: 12px; white-space: pre;">inset? &amp;&amp; [ &lt;posicao-x&gt; &lt;posicao-y&gt; &lt;blur-radius&gt;? &lt;spread-radius&gt;? &lt;cor&gt;? ]</span></p><pre class="brush: css;">
:root h3 + div{
	background: #FFF;
	border: 1px solid #ddd;
	padding: 20px;
	margin: 50px;
	box-shadow: 2px 2px 2px 0 #eee;
	-moz-box-shadow: 2px 2px 2px 0 #eee;
	-webkit-box-shadow: 2px 2px 2px 0 #eee;
}
</pre><p>Como podemos ver acima, primeiramente temos as medidas para posicionamento X e Y, estes podem ser em qualquer formato (px, em&#8230;). Para melhor entendimento, a posição X é o mesmo que posição horizontal relativa ao elemento (lembra do eixo X e Y do plano cartesiano?).</p><p>Por exemplo, se eu tenho uma <em>div</em> com 500px de largura e no <em>box-shadow</em> eu definir 2px para a posição X, seria o mesmo que criar uma uma &#8220;segunda div&#8221; (que é o <em>box-shadow</em>) com a mesma largura (500px) e margin-left de 2px, ou seja ela (a &#8220;segunda div&#8221;) ficaria 2px à frente. É mais ou menos assim que funciona o posicionamento do box-shadow. Para a posição Y seria a mesma coisa, mas no eixo vertical.</p><p>Logo após as posições temos o <em>blur-radius</em>, que é o responsável por criar o efeito do sombreamento. Na sintax diz que este valor é opcional, com o padrão sendo 0 (zero). Se você quer o efeito de ofuscamento no sombra, você deve setar o valor para esta propriedade, caso contrário ficará uma sombra &#8220;reta&#8221;.</p><p>Ao definir o valor para maior que 0 (zero) para <em>blur-radius,</em> a &#8220;segunda div&#8221; que citei anteriormente será aumentada em sua largura e altura. por exemplo, se o valor de <em>blur-radius</em> for igual a 5px , a &#8220;segunda div&#8221; passará a ter 510px de largura e 510px de altura. Recomendo que você tenha isso sempre em mente, pois irá diferenciar no posicionamento da sombra.</p><p>Outro valor opcional é o <em>spread-radius</em>. Sua função é semelhante ao <em>blur-radius</em>&#8230;também aumenta o tamanho da sombra (a &#8220;segunda div&#8221;), só que <strong>sem criar o efeito de ofuscamento</strong>. É uma segunda propriedade, e pode ser muito útil em alguns casos.</p><p>Concluindo, para o último valor, temos a <em>cor</em> da sombra, aqui não há segredo. Somente vale lembrar que se houver valor para <em>blur-radius</em> maior que zero, então a cor na largura &#8211; ou valor &#8211; do <em>blur-radius</em> será enfraquecida para criar o efeito de ofuscamento.</p><p>Vamos as observações:</p><ul><li>No posicionamento, você também pode usar valores negativos, neste caso a sombra seria rendenizada no lado oposto ao padrão.</li><li><em>Blur-radius</em> não suporta valores negativo.</li><li>Opera não aceita o valor <em>inset</em>, isto causará um erro e a propriedade será ignorada.</li></ul><p><a
title="Exemplo de Box-shadow" href="http://demo.mateussouza.com/css3-parte2/box-shadow.html" target="_blank">Veja o exemplo </a>|<a
title="Mais detalhes sobre Box shadow" href="http://dev.w3.org/csswg/css3-background/#the-box-shadow" target="_blank"> Mais detalhes</a></p><h3>Bônus 1: Apostila CSS3</h3><p>No final desta série vou disponibilizar estes post em uma apostilha. Então comentem sobre a idéia, deêm sugestões e aguardem para fazer o download <img
src='http://www.mateussouza.com/wordpress/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' title="Prosseguindo com CSS3   Bordas e Sombras" /> .</p><p>Até a próxima.<span
class="clear"></span></p> ]]></content:encoded> <wfw:commentRss>http://www.mateussouza.com/blog/css/prosseguindo-com-css3-bordas-e-sombras/feed</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Linha Framework &#8211; Desenvolva Front-end Com Mais Qualidade!</title><link>http://www.mateussouza.com/blog/css/linha-framework-desenvolva-front-end-com-mais-qualidade</link> <comments>http://www.mateussouza.com/blog/css/linha-framework-desenvolva-front-end-com-mais-qualidade#comments</comments> <pubDate>Tue, 27 Apr 2010 14:02:48 +0000</pubDate> <dc:creator>Mateus Souza</dc:creator> <category><![CDATA[CSS]]></category> <category><![CDATA[Dicas]]></category> <category><![CDATA[HTML]]></category> <category><![CDATA[Javascript]]></category> <category><![CDATA[Linha Framework]]></category> <category><![CDATA[Noticias]]></category> <category><![CDATA[jQuery]]></category><guid
isPermaLink="false">http://localhost/mateus_souza/?p=1046</guid> <description><![CDATA[Bom dia, boa tarde, boa noite&#8230;depois de muito tempo sem atividade no blog venho trazer uma novidade para vocês. Alguns já devem saber o que é, não vou ficar de papo furado então vamos direto a novidade: Linha Framework Trata-se de um framework (meio obvio não?) para desenvolvimento front-end &#8211; HTML, CSS e Javascript. Se [...]]]></description> <content:encoded><![CDATA[<p>Bom dia, boa tarde, boa noite&#8230;depois de muito tempo sem atividade no blog venho trazer uma novidade para vocês. Alguns já devem saber o que é, não vou ficar de papo furado então vamos direto a novidade:</p><h3>Linha Framework</h3><p><a
href="http://www.linhaframework.com/"><img
class="alignleft size-full wp-image-1107" title="linha_framework" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2010/04/linha_framework.png" alt="linha framework Linha Framework   Desenvolva Front end Com Mais Qualidade!" width="279" height="112" /></a>Trata-se de um framework (meio obvio não?) para desenvolvimento front-end &#8211; HTML, CSS e Javascript. Se você já usou algum grid CSS, como o <a
title="Grid 960" href="http://960.gs/">960.gs</a> ou <a
title="Blueprint CSS" href="http://www.blueprintcss.org/">Blueprint</a> por exemplo, irá se familiarizar facilmente com este framework, mas <strong>o <a
title="Linha Framework" href="http://www.linhaframework.com/">Linha Framework </a>é mais completo</strong>.</p><p>É mais completo pois não fica somente no grid CSS, temos o grid template (PSD), marcação HTML e CSS em português, sem falar do plugins para jQuery em português támbem. Acredite, desenvolver com um framework poupa e muito o seu tempo. Passando um pouco para a prática, você poderá desenvolver as três camadas (HTML, CSS e JS) de uma só vez, de forma fácil e rápida.</p><p><span
id="more-1046"></span></p><p>Não vou ficar tratando dos detalhes pois você pode encontrar os mesmos visitando o <a
title="Website Linha Framework" href="http://www.linhaframework.com/">site do Linha Framework</a>. Recomendo que baixem inicialmente a versão para desenvolvimento, pois contém demonstrações dos grids, plugins, enfim&#8230;é mais completo e melhor para iniciantes.</p><h3>Fugindo um pouco do foco</h3><p>Resolvi desenvolver este framework quando estava diante de um projeto mais complexo, ai já me empolguei e hoje está como você pode ver ai (no <a
title="repositório Git" href="http://github.com/mateus007/linha-framework">Github</a> é mais atualizado <img
src='http://www.mateussouza.com/wordpress/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' title="Linha Framework   Desenvolva Front end Com Mais Qualidade!" /> ). Não espero rebecer os &#8220;meus parabéns&#8221; (além do mais que eu não criei este framework pensando nisso&#8230;) , pois creio que há muito a ser melhorado, e pra isso conto com a ajuda da comunidade brasileira. Se quiser críticar, seja bem vindo, mais faça um crítica conclusiva e objetiva.</p><p>Como já disse, é pra comunidade brasileira (quem sabe a gente não conquista o mundo, ashhausdha), pois a comunidade brasileira &#8220;ta fraca&#8221;&#8230;</p><p>É isso, se desejar teste o framework e crie a sua própia opinião, pra mim é uma mão na roda bem grande, mais pra você, já é outra conversa. As novidades talvez serão postadas aqui, ou quem sabe eu crio um blog só pra ele. De qualquer forma eu vou trazer alguns tutoriais e screencasts para ajudar quem deseja usar.</p><p>Quero deixar bem claro que é um framework open souce e eu não gostaria de desenvolver sozinho, se você tem amplos conhecimentos em front-end e quêr ajudar no desenvolvimento, ou fazendo tutoriais, melhorar a documentação, ou seja lá o que for, saiba que seu esforço é de grande importância.</p><p>Visite <a
title="Clique para visitar" href="http://www.linhaframework.com">http://www.linhaframework.com</a>, baixe e use a vontade. Aproveite e divulgue também em sua rede social.</p><p>Antes de terminar este post, quero dizer também que estou reformulando meu site já usando o linha framework&#8230;ta ficando bunitu <img
src='http://www.mateussouza.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' title="Linha Framework   Desenvolva Front end Com Mais Qualidade!" /></p><p>Até a próxima.<span
class="clear"></span></p> ]]></content:encoded> <wfw:commentRss>http://www.mateussouza.com/blog/css/linha-framework-desenvolva-front-end-com-mais-qualidade/feed</wfw:commentRss> <slash:comments>7</slash:comments> </item> <item><title>Quais são os melhores frameworks para PHP, Ruby, JS e CSS?</title><link>http://www.mateussouza.com/blog/css/quais-sao-os-melhores-frameworks-para-php-ruby-js-e-css</link> <comments>http://www.mateussouza.com/blog/css/quais-sao-os-melhores-frameworks-para-php-ruby-js-e-css#comments</comments> <pubDate>Tue, 22 Sep 2009 12:01:45 +0000</pubDate> <dc:creator>Mateus Souza</dc:creator> <category><![CDATA[CSS]]></category> <category><![CDATA[Dicas]]></category> <category><![CDATA[Javascript]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[jQuery]]></category><guid
isPermaLink="false">http://www.mateussouza.com/?p=667</guid> <description><![CDATA[Creio que você já deve ter feito esta pergunta pelo menos uma vez quando pensou em usar algum framework para desenvolver. Foi pensando nisso que alguém (não consegui localizar o autor, somente a hospedagem) fez um site comparando os melhores frameworks atuais. http://www.bestwebframeworks.com/ É o site precisávamos&#8230;uma vez selecionado a linguagem, será exibida uma tabela [...]]]></description> <content:encoded><![CDATA[<p>Creio que você já deve ter feito esta pergunta pelo menos uma vez quando pensou em usar algum framework para desenvolver. Foi pensando nisso que alguém (não consegui localizar o autor, somente a hospedagem) fez um site comparando os melhores frameworks atuais.</p><p><a
href="http://www.bestwebframeworks.com/" target="_blank">http://www.bestwebframeworks.com/<br
/> <img
class="aligncenter size-full wp-image-694" title="bestwebframework2" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2009/09/bestwebframework2.jpg" alt="bestwebframework2 Quais são os melhores frameworks para PHP, Ruby, JS e CSS?" width="640" height="198" /></a></p><p>É o site precisávamos&#8230;uma vez selecionado a linguagem, será exibida uma tabela com pelo menos alguns pontos básicos:</p><ul><li>Licença;</li><li>Requisitos;</li><li>Recursos;</li><li>Compatibilidade.</li></ul><p>Quem tiver dúvidas creio que ao visitar este site terá mais certeza de qual framework precisa. Para não ficar só na dica eu vou falar os melhores na minha opinião:</p><p><span
id="more-667"></span></p><h3>PHP</h3><p><img
class="alignleft size-thumbnail wp-image-671" title="codeigniter" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2009/09/codeigniter-150x150.png" alt="codeigniter 150x150 Quais são os melhores frameworks para PHP, Ruby, JS e CSS?" width="55" height="55" />O framework que mais me agrada é o <strong>Codeigniter</strong>. Lembro de quando eu nem sabia PHP e fui me meter com ele sem nem saber pra que servia, rsrs. Mesmo não sabendo nada eu fui capaz de fazer algumas coisas e recomendo. Com um pouco mais de detalhes, a documentação do Codeigniter é bem completa, simples e fácil e tem até em português (<a
class="linkification-ext" title="Linkification: http://www.codeigniter.com.br/manual/index.html" href="http://www.codeigniter.com.br/manual/index.html">http://www.codeigniter.com.br/manual/index.html</a>),  sua instalação é a mais rápida que já vi e o desenvolvimento é: PHP, não é necessário aprender uma nova &#8220;linguagem&#8221; como no Zend Framework enfim, na minha opinião não tem melhor.</p><p><a
href="http://www.codeigniter.com.br" target="_blank">Site Oficial Codeigniter<br
/> </a><a
href="http://www.codeigniter.com.br/manual/index.html" target="_blank">Codeigniter Brasil<br
/> Documentação Codeigniter em Português </a></p><h3><strong>Ruby</strong></h3><p><img
class="alignleft size-full wp-image-672" title="rubyonrails" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2009/09/rubyonrails.png" alt="rubyonrails Quais são os melhores frameworks para PHP, Ruby, JS e CSS?" width="55" height="71" />Não sou nenhum programador Ruby mais sei que o melhor e mais conhecido framework é o <strong>Ruby on Rails</strong>.  Este frameworks é usado em grandes sites como Twitter, GitHub , Basecamp, BlogsBlogs entre outros. Nem vou falar mais nada apenas visitem o site <a
class="linkification-ext" title="Linkification: http://www.rubyonrails.pro.br/" href="http://www.rubyonrails.pro.br/">http://www.rubyonrails.pro.br/</a>, se empolgue e tire as suas próprias conclusões.</p><p><a
href="http://rubyonrails.org/" target="_blank">Site Oficial Ruby on Rails (inglês)</a><br
/> <a
href="http://rubyonrails.org/documentation" target="_blank">Documentação Ruby</a></p><h3>Javascript &#8211; JS</h3><p><img
class="alignleft size-full wp-image-680" title="jquery_logo" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2009/09/jquery_logo.png" alt="jquery logo Quais são os melhores frameworks para PHP, Ruby, JS e CSS?" width="146" height="36" />Se você é um leitor do meu blog já deve saber que <strong>jQuery</strong> é o frameworks que uso para programar javascript. Mesmo depois de tanto tempo usando jQuery ainda me surpreendo com a facilidade de se programar com essa biblioteca. Para você que ainda não conhece o jQuery recomendo que leia o post <a
href="http://www.mateussouza.com/jquery/introducao-ao-jquery">Introdução ao jQuery</a> e veja também os tutorias em sua <a
href="http://www.mateussouza.com/jquery">categoria</a>.</p><p><a
href="http://jquery.com/" target="_blank">Site Oficial jQuery</a><br
/> <a
href="http://docs.jquery.com/" target="_blank">Documentação jQuery</a></p><h3>CSS</h3><p><img
class="alignleft size-full wp-image-684" title="grid960" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2009/09/grid960.png" alt="grid960 Quais são os melhores frameworks para PHP, Ruby, JS e CSS?" width="89" height="59" />E por último para CSS recomendo o<strong> Grid 960</strong>. O GRID 960 é uma ferramenta simples que ajuda na padronização de layouts para web. Possui arquivos (grids) para os mais famosos programas usados para criação de layouts (Photoshop, Illustrator, Fireworks, Indesign, etc…). Seu desenvolvimento é bem fácil também e ajuda bastante no desenvolvimento do layout em CSS.</p><p><a
href="http://960.gs/" target="_blank">Site Oficial Grid 960</a><br
/> <a
href="http://960.gs/files/960_download.zip" target="_self">Download do Grid 960</a></p><p>Em breve se possível estarei trazendo mais novidades sobre cada um destes frameworks e tutoriais para aprendizado. Até a próxima.<span
class="clear"></span></p> ]]></content:encoded> <wfw:commentRss>http://www.mateussouza.com/blog/css/quais-sao-os-melhores-frameworks-para-php-ruby-js-e-css/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Iniciando com CSS3</title><link>http://www.mateussouza.com/blog/css/iniciando-com-css3</link> <comments>http://www.mateussouza.com/blog/css/iniciando-com-css3#comments</comments> <pubDate>Mon, 31 Aug 2009 17:35:21 +0000</pubDate> <dc:creator>Mateus Souza</dc:creator> <category><![CDATA[CSS]]></category><guid
isPermaLink="false">http://www.mateussouza.com/?p=594</guid> <description><![CDATA[Já faz algum tempo que o CSS3 foi lançando e eu ainda não falei nada sobre ele. Pois bem, vamos dar uma introdução ao CSS3. Antes de mais nada quero deixar bem claro que nem todos os navegadores tem suporte ao CSS3, não preciso nem citar o IE6 né . Aqui vale apenas citar os [...]]]></description> <content:encoded><![CDATA[<p><img
class="alignnone size-full wp-image-609" title="imgcss3" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2009/08/imgcss3.jpg" alt="imgcss3 Iniciando com CSS3" width="466" height="155" /></p><p>Já faz algum tempo que o CSS3 foi lançando e eu ainda não falei  nada sobre ele. Pois bem, vamos dar uma introdução ao CSS3.  Antes de mais nada quero deixar bem claro que nem todos os navegadores tem suporte ao CSS3, não preciso nem citar o IE6 né <img
src='http://www.mateussouza.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' title="Iniciando com CSS3" /> . Aqui vale apenas citar os que possuem suporte: <a
href="http://pt-br.www.mozilla.com/pt-BR/firefox/" target="_blank">Firefox 3+</a>, <a
href="http://www.apple.com/safari/" target="_blank">Safari 4+</a> e <a
href="http://www.opera.com/download/" target="_blank">Opera 9.5+</a>. Vamos iniciar com a história do CSS:</p><h3><strong>A História do CSS</strong></h3><p>O Primeiro código CSS foi proposto por um cara chamado Hakon Lie em Outubro de 1994. Logo depois, em 1995, foi criado um workshop e com isso surgiu a W3C. Um ano se passou e o CSS1 começou a ser recomendado, exatamente em 1997. Muitos trabalhos e estudos foram feitos em cima do CSS1 e em meados de 1998, mas precisamente em Maio, o CSS2 tornou-se uma linguagem de marcação recomendada pela W3C. Desde então, apenas esboços foram apresentados como módulos em Junho de 1999(CSS3).</p><p>Com essa pequena intro, já percebe-se que o CSS3 vem sendo planejado a muito tempo. Chega de &#8220;papo furado&#8221; e vamos prosseguir.</p><h3>Novidade do CCS3</h3><p>Novidades são muitas&#8230;o melhor delas é que são úteis, hehe <img
src='http://www.mateussouza.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' title="Iniciando com CSS3" /> .  Veja a  lista das principais propriedades que são novidades, com o surgimento do CSS3:<br
/> <span
id="more-594"></span><br
/> <strong>Bordas</strong></p><ul
style="margin-top: 1px;"><li>border-color</li><li>border-image</li><li>border-radius</li><li>box-shadow</li></ul><p><strong>Fundos</strong></p><ul
style="margin-top: 1px;"><li>background-origin</li><li>background-clip</li><li>background-size</li><li>fazer camadas com múltiplas imagens de fundo</li></ul><p><strong>Cor</strong></p><ul
style="margin-top: 1px;"><li>cores HSL</li><li>cores HSLA</li><li>cores RGBA</li><li>Opacidade</li></ul><p><strong>Texto</strong></p><ul
style="margin-top: 1px;"><li>text-shadow</li><li>text-overflow</li><li>Ruptura de palavras longas</li></ul><p><strong>Interface</strong></p><ul
style="margin-top: 1px;"><li>box-sizing</li><li>resize</li><li>outline</li><li>nav-top, nav-right, nav-bottom, nav-left</li></ul><p><strong>Seletores</strong></p><ul
style="margin-top: 1px;"><li>Seletores por atributos</li></ul><p><strong>Modelo de caixa básico</strong></p><ul
style="margin-top: 1px;"><li>overflow-x, overflow-y</li></ul><p><strong>Outros</strong></p><ul
style="margin-top: 1px;"><li>media queries</li><li>criação de múltiplas colunas de texto</li><li>propriedades orientadas a discurso ou leitura automática de páginas web</li><li>Web Fonts</li></ul><p>Em futuros posts  falarei sobre estas propriedades e também farei tutoriais (o que não pode faltar ^^). Por ordem de importância, vamos falar hoje sobre os seletores do CSS3.</p><h3>Seletores CSS3</h3><p>No geral, os seletores do CSS3 são estes (obs. <strong>E </strong>- letra E &#8211; é o seletor. Ex: p[atributo*="string"]):</p><ul><li>E[atributo*="string"]</li><li>E[atributo$="string"]</li><li>E[atributo^="string"]</li><li>E~F</li><li>:root</li><li>:last-child</li><li> <img
src='http://www.mateussouza.com/wordpress/wp-includes/images/smilies/icon_surprised.gif' alt=':o' class='wp-smiley' title="Iniciando com CSS3" /> nly-child</li><li>:not ( )</li><li>:empty</li><li>:target</li><li>:enabled</li><li>:disabled</li><li>:checked</li></ul><p>Quem conhece bem o jQuery, perceberá que ele tem alguns seletores igualzinho ao CSS3, isto ocorre porque o <a
title="Visitar Website Jquery" href="http://jquery.com/" target="_blank">jQuery</a> utiliza os seletores do CSS3 também.</p><h3><strong>E[atributo*="string"]</strong></h3><p>Funciona da seguinte maneira, imagine que eu tenho uma div alinhada a esquerda:</p><pre class="brush: xml;">&lt;div align='left'&gt;&lt;/div&gt;</pre><p>Podemos estilizar esta div apenas acessando a sua propriedade, que neste caso é align=&#8221;left&#8221;. Observe que o valor é exatamente igual &#8211; left = left.</p><pre class="brush: css;">div[align*=left] {
} </pre><p><a
href="http://demo.mateussouza.com/css3/exemploatributo.html" target="_blank">Veja o exemplo</a></p><p>Semelhantemente os seletores E[atributo$="string"] e E[atributo^="string"], funcionam da mesma forma, mais a diferença entre eles é, se tiver o <strong>$(cifrão) </strong>deverá terminar com o valor especificado e se tiver o <strong>^(acento circunflexo)</strong> deverá iniciar com o valor especificado.</p><h3><strong>E~F</strong></h3><p>Este seletor faz uma combinação de dois seletores para a estilização<strong>. </strong>Exemplo, um<strong> h1</strong> e <strong>p</strong>:</p><pre class="brush: xml;">
&lt;h1&gt;&lt;/h1&gt;
&lt;p&gt;&lt;/p&gt;
</pre><p>e o css:</p><pre class="brush: css;">
h1 ~ p {
}
</pre><p>Neste caso o que será estilizado com css é o <strong>p. </strong>O segredo para o domínio desta seleção é a ordem dos elementos, se neste exemplo o <strong>h1</strong> fosse depois do <strong>p</strong> o css não resultaria em nada. Observe o que estou dizendo:</p><pre class="brush: xml;">
&lt;p&gt;&lt;/p&gt;
&lt;h1&gt;&lt;/h1&gt;
</pre><p><a
href="http://demo.mateussouza.com/css3/ef.html" target="_blank">Veja o exemplo</a></p><h3><strong>:root</strong></h3><p>Como o próprio nome diz, ele irá pegar o 1º elemento da página, a tag &lt;html&gt;<strong>. </strong>Podemos usar um css mais avançado e criar CSSs da seguinte maneira:<strong> </strong></p><pre class="brush: css;">
:root div{
}
</pre><p><a
href="http://demo.mateussouza.com/css3/root.html" target="_blank">Veja o exemplo</a></p><h3><strong>:last-child, <img
src='http://www.mateussouza.com/wordpress/wp-includes/images/smilies/icon_surprised.gif' alt=':o' class='wp-smiley' title="Iniciando com CSS3" /> nly-child e :not()</strong></h3><p>Para não cansar a leitura, vamos a uma explicação rápida. <strong>:last-child</strong> irá pegar somente o último elemento de uma lista por exemplo (&lt;li&gt;):</p><p>HTML</p><pre class="brush: xml;">
&lt;ul&gt;
    	&lt;li&gt;Texto 1&lt;/li&gt;
    	&lt;li&gt;Texto 2&lt;/li&gt;
    	&lt;li&gt;Texto 3&lt;/li&gt;
    	&lt;li&gt;Eu sou o ultimo texto desta lista&lt;/li&gt;
&lt;/ul&gt;
</pre><p>CSS</p><pre class="brush: css;">
li:last-child{
    	background: #ddd;
    	display: block;
}
</pre><p><a
href="http://demo.mateussouza.com/css3/child.html" target="_blank">Veja o exemplo</a></p><p><strong> <img
src='http://www.mateussouza.com/wordpress/wp-includes/images/smilies/icon_surprised.gif' alt=':o' class='wp-smiley' title="Iniciando com CSS3" /> nly-child</strong>, como o própio nome já diz, (only = único) irá buscar o elemento que é único, para exemplificar usei mais uma vez uma lista:</p><p>HTML</p><pre class="brush: xml;">
&lt;ul&gt;
    	&lt;li&gt;Texto 1&lt;/li&gt;
    	&lt;li&gt;Texto 2
    	    	&lt;ul&gt;
    	    	    	&lt;li&gt;Só tem um LI&lt;/li&gt;
    	    	&lt;/ul&gt;
    	&lt;/li&gt;
    	&lt;li&gt;Texto 3&lt;/li&gt;
    	&lt;li&gt;Texto 4&lt;/li&gt;
 &lt;/ul&gt;</pre><p>CSS</p><pre class="brush: css;">
li:only-child {
    	background: #ddd;
    	display: block;
}
</pre><p><a
href="http://demo.mateussouza.com/css3/child.html" target="_blank">Veja o exemplo</a></p><p><strong>:not</strong>, irá &#8220;bloquear&#8221; a estilização com CSS ao elemento que tiver uma certa #id ou .classe . Neste exemplo abaixo, &#8220;bloquearemos&#8221; a classe .vermelho:</p><p>HTML</p><pre class="brush: xml;">
&lt;ul id=&quot;dois&quot;&gt;
    		&lt;li&gt;Texto 1&lt;/li&gt;
		&lt;li class=&quot;vermelho&quot;&gt;Texto 2&lt;/li&gt;
		&lt;li&gt;Texto 3&lt;/li&gt;
		&lt;li&gt;Texto 4&lt;/li&gt;
		&lt;li&gt;Texto 3&lt;/li&gt;
		&lt;li&gt;Texto 4&lt;/li&gt;
		&lt;li class=&quot;vermelho&quot;&gt;Texto 3&lt;/li&gt;
		&lt;li&gt;Texto 4&lt;/li&gt;
&lt;/ul&gt;</pre><p>CSS</p><pre class="brush: css;">
    	li:not(.vermelho){
    	background: #ddd;
}
</pre><p><a
href="http://demo.mateussouza.com/css3/child.html" target="_blank">Veja o exemplo</a></p><h3>:empty</h3><p>É útil para indicar div que estão em branco (empty = em branco), ou então esconde-las, como no código abaixo:</p><pre class="brush: css;">
div.box:empty {
    	display: none;
}
</pre><h3>:target</h3><p>essa eu axei interressante&#8230;imagine que você tenha links que puxar o id(#) de uma parte do site, por exemplo este link <a
href="http://www.mateussouza.com/novidades/novas-funcoesfunctions-do-wordpress-2-8#comments">http://www.mateussouza.com/novidades/novas-funcoesfunctions-do-wordpress-2-8#comments</a> você percebe que no final dele existe #comments e é usando esse atributo que vamos estilizá-lo:<span><span> </span></span></p><pre class="brush: css;">
h2:target {
    	background:#F2EBD6;
}
</pre><h3>:enabled, :disabled e :checked</h3><p>Só se aplica a elementos do html que tenham a opção de abrir(enabled) e fechar(disabled) ou checar(checkbox)<span>, como por exemplo formulários.  Podemos estilizar como destaque alguns radios que estão desabilidatos.</span></p><pre class="brush: xml;">
&lt;input type=&quot;text&quot; disabled=&quot;true&quot; /&gt;
</pre><p>O css seria:</p><pre class="brush: css;">
input:disabled {
    	border:1px dotted #999;
    	background:#F2F2F2;
 }
</pre><p>o mesmo se aplica ao enabled, mais temos que somente alterar :disabled por :enabled. Ex:</p><pre class="brush: css;">
input:enabled {
    	border:1px dotted #999;
    	background: #F2F2F2;
 }
</pre><p>E para finalizar, com o atributo :checked podemos colocar os checkbox&#8217;s que estão checados mais a frente:</p><pre class="brush: xml;">
&lt;input type=&quot;checkbox&quot; checked=&quot;checked&quot; /&gt;
</pre><p>CSS:</p><pre class="brush: css;">
input:checked {
    	margin-left: 20px;
}
</pre><p><a
href="http://demo.mateussouza.com/css3/enabled.html" target="_blank">Veja o exemplo</a></p><p>Depois leia também o post do Smashing Magazine que está mais amplo&#8230;<a
title="Taming Advanced CSS Selectors" rel="bookmark" href="http://www.smashingmagazine.com/2009/08/17/taming-advanced-css-selectors/"><br
/> Taming Advanced CSS Selectors</a></p><h4>Outros Post Desta Série</h4><p><a
title="Prosseguindo com CSS3 – Bordas e Sombras" href="http://www.mateussouza.com/blog/css/prosseguindo-com-css3-bordas-e-sombras">Prosseguindo com CSS3 – Bordas e Sombras</a></p><p>Até a próxima.<span
class="clear"></span></p> ]]></content:encoded> <wfw:commentRss>http://www.mateussouza.com/blog/css/iniciando-com-css3/feed</wfw:commentRss> <slash:comments>5</slash:comments> </item> <item><title>Menu Com Efeito Hover Perfeito Em Todos Os Navegadores!!!</title><link>http://www.mateussouza.com/blog/css/menu-com-efeito-hover-perfeito-em-todos-os-navegadores</link> <comments>http://www.mateussouza.com/blog/css/menu-com-efeito-hover-perfeito-em-todos-os-navegadores#comments</comments> <pubDate>Sat, 28 Feb 2009 17:20:14 +0000</pubDate> <dc:creator>Mateus Souza</dc:creator> <category><![CDATA[CSS]]></category> <category><![CDATA[Dicas]]></category> <category><![CDATA[HTML]]></category> <category><![CDATA[Webdesigner]]></category><guid
isPermaLink="false">http://www.mateussouza.com/?p=523</guid> <description><![CDATA[Bom hoje eu vou postar um dos meu &#8220;macetes&#8221; que eu uso pra me ajudar na produção de sites&#8230;é o famoso &#8220;don&#8217;t repeat yourself&#8221;: Demonstração / Download Primeiro vamos ao conceito.Seria um modelo já produzido para agilizar o seu trabalho como webdesigner, por exemplo, você ta la ganhando o pão de cada dia e se [...]]]></description> <content:encoded><![CDATA[<p
id="firstHeading" class="firstHeading">Bom hoje eu vou postar um dos meu &#8220;macetes&#8221; que eu uso pra me ajudar na produção de sites&#8230;é o famoso &#8220;don&#8217;t repeat yourself&#8221;:</p><p
class="firstHeading"><img
class="aligncenter size-full wp-image-556" title="hover" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2009/06/hover.jpg" alt="hover Menu Com Efeito Hover Perfeito Em Todos Os Navegadores!!!" width="583" height="143" /></p><p
style="text-align: center;"><a
href="http://demo.mateussouza.com/Menu%20Hover/">Demonstração</a> / <a
href="http://arquivos.mateussouza.com/Menu%20Hover.rar">Download</a></p><p
class="firstHeading">Primeiro vamos ao conceito.Seria um modelo já produzido para agilizar o seu trabalho como webdesigner, por exemplo, você ta la ganhando o pão de cada dia e se depara com um menu como este&#8230;não é mais facil usar o famoso CTRL+C e CTRL+V? pois bem, este é o conceito&#8230;e acredite, <strong>sua produtividade vai aumetar e muito.</strong>..chega de fica perdendo tempo escreve linhas e linhas de código, torrando a cabeça, ouvindo o chefe gritar no seu ouvido porque o job ta atrasado&#8230;ta bom, eu apelei mais é essa a intenção.<br
/> É claro que cada menu é diferente um do outro e tals, enfim&#8230;o objetivo é ter em mãos um modelo propriamente feito, <strong>compatível com todos os navegadores</strong>, ai é só fazer o jogo do copiar e colar, um pouquinho de alteração aqui&#8230;outro ali&#8230;e voala&#8230;menu certinho e produzido pelo menos na metade do tempo. Já deu pra entender né&#8230;</p><p
class="firstHeading">Como não te muito o que falar vamos logo ao bendito menu em css:</p><p
class="firstHeading"><strong>HTML:</strong></p><pre class="brush: xml;">
&lt;ul class=&quot;menu&quot;&gt;
&lt;li&gt;&lt;a href=&quot;&quot;&gt;Home&lt;/a&gt;&lt;/li&gt;

&lt;li&gt;&lt;a href=&quot;&quot;&gt;Contato&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;&quot;&gt;Serviços&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;&quot;&gt;Musica&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;&quot;&gt;Teste&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</pre><p
class="firstHeading">O codigo HTML é só isso mesmo, uma lista simples, nada demais&#8230;</p><p
class="firstHeading"><strong>CSS:</strong></p><pre class="brush: css;">ul.menu li {
float:left;
background: #333;
padding:0px;
line-height: 30px;
border-style: solid;
border-width: 1px;
border-color: #404040 #1a1a1a #1a1a1a #505050;
}
ul.menu li a{
display: block;
padding: 5px 30px;
color: #fff;
font-size:17px;
font-family:Arial,Helvetica,sans-serif;
text-decoration: none;
font-weight: bold;
}
ul.menu li a:hover, ul.menu li:hover{
color: #fff;
background: #4698ca;
border-top-color: #5db1e0 !important;
border-left-color: #5db1e0;
}</pre><p
class="firstHeading">Se você fizer o download dos arquivos verá que quase todas as linhas de códigos do CSS (algumas seria idiotisse comentar) estão comentadas explicando o funcionamento de cada uma.</p><p
class="firstHeading">Até a próxima.</p><p><span
class="clear"></span></p> ]]></content:encoded> <wfw:commentRss>http://www.mateussouza.com/blog/css/menu-com-efeito-hover-perfeito-em-todos-os-navegadores/feed</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Desenvolvimento Web &#8211; 23 Cheat Sheets de Grande Ajuda</title><link>http://www.mateussouza.com/blog/css/desenvolvimento-web-23-cheat-sheets-de-grande-ajuda</link> <comments>http://www.mateussouza.com/blog/css/desenvolvimento-web-23-cheat-sheets-de-grande-ajuda#comments</comments> <pubDate>Mon, 19 Jan 2009 19:30:26 +0000</pubDate> <dc:creator>Mateus Souza</dc:creator> <category><![CDATA[CSS]]></category> <category><![CDATA[Dicas]]></category> <category><![CDATA[HTML]]></category> <category><![CDATA[Javascript]]></category> <category><![CDATA[Mootools]]></category> <category><![CDATA[SEO]]></category> <category><![CDATA[Webdesigner]]></category> <category><![CDATA[Wordpress]]></category> <category><![CDATA[jQuery]]></category><guid
isPermaLink="false">http://www.mateussouza.com/?p=474</guid> <description><![CDATA[Como esse é o meu primeiro post do ano&#8230;vamos postar algo eficiente que ajude a todos Pra quem não sabe&#8230;teve algumas pessoas que resolveram criar PDFs ou Imagens contendo uma ajuda, um help pra quem esqueceu os codigos de CSS por exemplo. Esses arquivos receberam o nome de Cheat Sheets (num sei o que significa [...]]]></description> <content:encoded><![CDATA[<p>Como esse é o meu primeiro post do ano&#8230;vamos postar algo eficiente que ajude a todos<br
/> Pra quem não sabe&#8230;teve algumas pessoas que resolveram criar PDFs ou Imagens contendo uma ajuda, um help pra quem esqueceu os codigos de CSS por exemplo.<br
/> Esses arquivos receberam o nome de Cheat Sheets (num sei o que significa e nem quero saber <img
src='http://www.mateussouza.com/wordpress/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /> )</p><p>Tem de tudo&#8230;HTML/XHTML, CSS, JavaScript (incluindo MooTools e jQuery), e mais alguns.Espero que ajude a todos:</p><h3>HTML/XHTML</h3><h4>1. <a
href="http://www.gosquared.com/liquidicity/archives/51">HTML  Help Sheet</a></h4><p><a
href="http://www.gosquared.com/liquidicity/archives/51"><img
src="http://images.sixrevisions.com/2008/07/07-01_html_help_sheet.png" alt="HTML Help Sheet Screenshot" width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://www.gosquared.com/images/help_sheets/HTML%20Help%20Sheet.pdf">PDF</a></li></ul><p><span
id="more-474"></span></p><h4>2. <a
href="http://www.addedbytes.com/cheat-sheets/html-cheat-sheet/">HTML Cheat  Sheet</a></h4><p><a
href="http://www.addedbytes.com/cheat-sheets/html-cheat-sheet/"><img
src="http://images.sixrevisions.com/2008/07/07-02_html_cheat_sheet.png" alt="HTML Cheat Sheet - Screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://www.addedbytes.com/download/html-cheat-sheet-v1/pdf/">PDF</a></li><li><a
href="http://www.addedbytes.com/download/html-cheat-sheet-v1/png/">PNG</a></li></ul><h4>3. <a
href="http://www.addedbytes.com/cheat-sheets/html-character-entities-cheat-sheet/">HTML Character Entities Cheat Sheet</a></h4><p><a
href="http://www.addedbytes.com/cheat-sheets/html-character-entities-cheat-sheet/"><img
src="http://images.sixrevisions.com/2008/07/07-03_html_character_entities.png" alt="HTML Character Entities Cheat Sheet - Screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://www.addedbytes.com/download/html-character-entities-cheat-sheet/pdf/">PDF</a></li><li><a
href="http://www.addedbytes.com/download/html-character-entities-cheat-sheet/png/">PNG</a></li></ul><h4>4. <a
href="http://floele.flyspray.org/htmlcheatsheet.pdf">XHTML  Cheat Sheet v. 1.03</a> – PDF</h4><p><a
href="http://floele.flyspray.org/htmlcheatsheet.pdf"><img
src="http://images.sixrevisions.com/2008/07/07-04_xhtml_cheat_sheet.png" alt="XHTML Cheat Sheet v. 1.03 - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><h3>CSS</h3><h4>5. <a
href="http://www.addedbytes.com/cheat-sheets/css-cheat-sheet/">CSS Cheat Sheet  (V2)</a></h4><p><a
href="http://www.addedbytes.com/cheat-sheets/css-cheat-sheet/"><img
src="http://images.sixrevisions.com/2008/07/07-05_css_cheat_sheet.png" alt="CSS Cheat Sheet (V2) - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://www.addedbytes.com/download/css-cheat-sheet-v2/pdf/">PDF</a></li><li><a
href="http://www.addedbytes.com/download/css-cheat-sheet-v2/png/">PNG</a></li></ul><h4>6. <a
href="http://lesliefranke.com/files/reference/csscheatsheet.html">CSS Cheat  Sheet</a></h4><p><a
href="http://lesliefranke.com/files/reference/csscheatsheet.html"><img
src="http://images.sixrevisions.com/2008/07/07-06_css_version_2.png" alt="CSS Cheat Sheet - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://lesliefranke.com/sandbox/ref/csscheatsheet.pdf">PDF</a></li><li><a
href="http://lesliefranke.com/sandbox/ref/csscheatsheet.html">HTML</a></li></ul><h4>7. <a
href="http://www.leigeber.com/2008/04/css-shorthand-cheat-sheet/">CSS Shorthand  Cheat Sheet</a></h4><p><a
href="http://www.leigeber.com/2008/04/css-shorthand-cheat-sheet/"><img
src="http://images.sixrevisions.com/2008/07/07-07_shorthand_cheat_sheet.png" alt="CSS Shorthand Cheat Sheet - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://www.leigeber.com/wp-content/uploads/2008/04/css-cheat-sheet.pdf">PDF</a></li></ul><h4>8. <a
href="http://refcards.com/docs/deepx/css1/CSS1.pdf">CSS  Level 1 Quick Reference</a> – PDF</h4><p><a
href="http://refcards.com/docs/deepx/css1/CSS1.pdf"><img
src="http://images.sixrevisions.com/2008/07/07-08_css_level_1.png" alt="CSS Level 1 Quick Reference - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><h4>9. <a
href="http://refcards.com/docs/jungb/css2/css2.pdf">CSS  Level 2 Quick Reference</a> – PDF</h4><p><a
href="http://refcards.com/docs/jungb/css2/css2.pdf"><img
src="http://images.sixrevisions.com/2008/07/07-09_css_level_2.png" alt="CSS Level 2 Quick Reference - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><h4>10. <a
href="http://www.explainth.at/downloads/cssquick.pdf">CSS2.1  Quick Reference Card</a> – PDF</h4><p><a
href="http://www.explainth.at/downloads/cssquick.pdf"><img
src="http://images.sixrevisions.com/2008/07/07-10_css21_quick_reference_card.png" alt="CSS2.1 Quick Reference Card - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><h4>11. <a
href="http://www.veign.com/downloads/guides/qrg0007.pdf">CSS2  Reference Guide</a> – PDF</h4><p><a
href="http://www.veign.com/downloads/guides/qrg0007.pdf"><img
src="http://images.sixrevisions.com/2008/07/07-11_css_quick_reference.png" alt="CSS2 Reference Guide - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><h3>JavaScript</h3><h4>12. <a
href="http://www.addedbytes.com/cheat-sheets/javascript-cheat-sheet/">JavaScript  Cheat Sheet</a></h4><p><a
href="http://www.addedbytes.com/cheat-sheets/javascript-cheat-sheet/"><img
src="http://images.sixrevisions.com/2008/07/07-12_javascript_cheat_sheet.png" alt="JavaScript Cheat Sheet - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://www.addedbytes.com/download/javascript-cheat-sheet-v1/pdf/">PDF</a></li><li><a
href="http://www.addedbytes.com/download/javascript-cheat-sheet-v1/png/">PNG</a></li></ul><h4>13. <a
href="http://wps.aw.com/wps/media/objects/2234/2287950/javascript_refererence.pdf">Addison-Wesley’s  JavaScript Reference Card</a> – PDF</h4><p><a
href="http://wps.aw.com/wps/media/objects/2234/2287950/javascript_refererence.pdf"><img
src="http://images.sixrevisions.com/2008/07/07-13_javascript_reference_card.png" alt="Addison-Wesley's JavaScript Reference Card - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><h4>14. <a
href="http://www.dannyg.com/ref/jsquickref.html">JavaScript  and Browser Objects Quick Reference</a></h4><p><a
href="http://www.dannyg.com/ref/jsquickref.html"><img
src="http://images.sixrevisions.com/2008/07/07-14_javascript_and_browser_object.png" alt="JavaScript and Browser Objects Quick Reference - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://www.dannyg.com/dl/JSB6RefBooklet.pdf">PDF</a></li></ul><h4>15. <a
href="http://www.wait-till-i.com/stuff/JavaScript-DOM-Cheatsheet.pdf">The most  common DOM methods at a glance</a> – PDF</h4><p><a
href="http://www.wait-till-i.com/stuff/JavaScript-DOM-Cheatsheet.pdf"><img
src="http://images.sixrevisions.com/2008/07/07-15_most_common_dom.png" alt="The most common DOM methods at a glance - Screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><h4>16. <a
href="http://www.explainth.at/en/qr/jsqr.shtml">JavaScript  Quick Reference Card/Cheatsheet</a></h4><p><a
href="http://www.explainth.at/en/qr/jsqr.shtml"><img
src="http://images.sixrevisions.com/2008/07/07-16_explainthat_reference_card.png" alt="avaScript Quick Reference Card/Cheatsheet - Screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://www.explainth.at/downloads/jsquick.pdf">PDF</a></li></ul><h4>17. <a
href="http://mediavrog.net/blog/2008/06/11/mootools/mootools-12-cheat-sheet/">mootools  1.2 cheat sheet</a></h4><p><a
href="http://mediavrog.net/blog/2008/06/11/mootools/mootools-12-cheat-sheet/"><img
src="http://images.sixrevisions.com/2008/07/07-17_mootools_1_2_cheatsheet.png" alt="mootools 1.2 cheat sheet - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://mediavrog.net/blog/wp-content/uploads/2008/06/mootools-12-cheat-sheet.pdf">PDF</a></li></ul><h4>18. <a
href="http://colorcharge.com/jquery/">jQuery Cheatsheet</a></h4><p><a
href="http://colorcharge.com/jquery/"><img
src="http://images.sixrevisions.com/2008/07/07-18_jquery_cheatsheet.png" alt="jQuery Cheatsheet - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://colorcharge.com/wp-content/uploads/2007/12/jquery12_colorcharge.png">PNG</a></li></ul><h4>19. <a
href="http://www.gscottolson.com/weblog/2008/01/11/jquery-cheat-sheet/">jQuery  1.2 Cheat Sheet</a></h4><p><a
href="http://www.gscottolson.com/weblog/2008/01/11/jquery-cheat-sheet/"><img
src="http://images.sixrevisions.com/2008/07/07-19_jquery_1_2_cheat_sheet.png" alt="jQuery 1.2 Cheat Sheet - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://www.gscottolson.com/jquery/jQuery1.2.cheatsheet.v1.0.pdf">PDF</a></li></ul><h4>20. <a
href="http://jquery.com/images/jQuery-Map.png">jQuery  Visual Map</a> – PNG</h4><p><a
href="http://jquery.com/images/jQuery-Map.png"><img
src="http://images.sixrevisions.com/2008/07/07-20_jquery_visual_map.jpg" alt="jQuery Visual Map - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><h3>Variados</h3><h4>21. <a
href="http://www.addedbytes.com/cheat-sheets/colour-chart/">RGB Hex Colour  Chart</a></h4><p><a
href="http://www.addedbytes.com/cheat-sheets/colour-chart/"><img
src="http://images.sixrevisions.com/2008/07/07-21_rgb_colour_codes.png" alt="RGB Hex Colour Chart - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://www.addedbytes.com/download/rgb-hex-cheat-sheet-v1/pdf/">PDF</a></li><li><a
href="http://www.addedbytes.com/download/rgb-hex-cheat-sheet-v1/png/">PNG</a></li></ul><h4>22. <a
href="http://www.seomoz.org/blog/the-web-developers-seo-cheat-sheet">The Web  Developer’s SEO Cheat Sheet</a></h4><p><a
href="http://www.seomoz.org/blog/the-web-developers-seo-cheat-sheet"><img
src="http://images.sixrevisions.com/2008/07/07-22_web_developer_seo.png" alt="The Web Developer's SEO Cheat Sheet - screen shot" width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://www.seomoz.org/user_files/SEO_Web_Developer_Cheat_Sheet.pdf">PDF</a></li></ul><h4>23. <a
href="http://wpcandy.com/articles/tutorials/the-wordpress-help-sheet.html">The  WordPress Help Sheet</a></h4><p><a
href="http://wpcandy.com/articles/tutorials/the-wordpress-help-sheet.html"><img
src="http://images.sixrevisions.com/2008/07/07-23_wordpress_help_sheet.png" alt="The WordPress Help Sheet - screen shot." width="550" height="200" title="Desenvolvimento Web   23 Cheat Sheets de Grande Ajuda" /></a></p><ul><li><a
href="http://wpcandy.com/wp-content/uploads/WordPress-Help-Sheet.pdf">PDF</a></li></ul><p>Alias vamos ao creditos:<br
/> <a
href="http://sixrevisions.com/resources/cheat_sheets_web_developer/" target="_blank">Six Revision</a> &#8211; Excelente site, apesar de ser em inglês&#8230;recomendo a todos</p><p>Até a próxima.<span
class="clear"></span></p> ]]></content:encoded> <wfw:commentRss>http://www.mateussouza.com/blog/css/desenvolvimento-web-23-cheat-sheets-de-grande-ajuda/feed</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Diferença entre ID(#) e Class(.)</title><link>http://www.mateussouza.com/blog/css/diferenca-entre-id-e-class</link> <comments>http://www.mateussouza.com/blog/css/diferenca-entre-id-e-class#comments</comments> <pubDate>Thu, 04 Dec 2008 13:39:31 +0000</pubDate> <dc:creator>Mateus Souza</dc:creator> <category><![CDATA[CSS]]></category> <category><![CDATA[Tutoriais]]></category><guid
isPermaLink="false">http://www.mateussouza.com/?p=426</guid> <description><![CDATA[Bom eu estava &#8220;dando aula&#8221; pra um amigo meu pelo Skype e surgiu essa pergunta: Qual é  a diferença entre ID(#) e Class(.)?E é este tema que será abordado neste post: Intrudução É comum haver confusões entre IDs e Classes, utilizados e necessários em XHTML, CSS e Javascript. Há muitos tutoriais na internet explicando alguns [...]]]></description> <content:encoded><![CDATA[<p>Bom eu estava &#8220;dando aula&#8221; pra um amigo meu pelo Skype e surgiu essa pergunta: Qual é  a diferença entre ID(#) e Class(.)?E é este tema que será abordado neste post:</p><p><strong>Intrudução</strong><br
/> É comum haver confusões entre IDs e Classes, utilizados e necessários em XHTML, CSS e Javascript. Há muitos tutoriais na <em>internet</em> explicando alguns pontos básicos e algumas dicas, que não são o suficiente. Resultado: as dúvidas persistem e a diferença entre ID e Classe ainda não é “desvendada”. Vamos acaber com esse mitério de uma vez por todas&#8230;</p><p><span
id="more-426"></span></p><h3>IDs e classes são “anzóis”</h3><p>Precisamos definir uma propriedade(estilos) para os elementos da pagina. Para isso, usamos e <strong>IDs</strong> e <strong>Classes</strong>.</p><p>Por exemplo:</p><pre class="brush: xml;">&lt;ul id=&quot;nav&quot;&gt;</pre><p>Isso dá a oportunidade de visar e aplicar especificamente as propriedades para esta lista, então há uma maneira de manipular esta lista exclusivamente em relação a outras listas não-ordenadas da página. Ou talvez tivéssemos uma seção na página que não possui uma <em>tag</em> relevante para signifcar, por exemplo, um rodapé, onde poderíamos fazer algo como:</p><pre class="brush: xml;">&lt;div id=&quot;footer&quot;&gt;</pre><p>Ou talvez tenhamos <em>boxes</em> na barra lateral para manter o conteúdo separado de alguma forma:</p><pre class="brush: xml;">&lt;ul class=&quot;sidebar-box&quot;&gt;</pre><p>Esses IDs e classes são os “anzóis” que precisamos fazer na marcação para colocarmos as mãos neles. O 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ém dependem deles. Mas quais as diferenças entre IDs e classes?</p><h3>IDs são únicos</h3><ul><li>Cada elemento pode ter <strong>apenas um</strong> ID;</li><li>Cada página pode ter apenas <strong>um elemento</strong> com aquele ID.</li></ul><p>Quando se está aprendendo sobre isso, é comum ouvir que só se deve usar IDs uma vez, mas é possível usar uma classe várias vezes. Basicamente, isso entra num ouvido e sai no outro, porque soa mais como uma “regrinha” que algo realmente importante. Se você trata somente com HTML / CSS, isso pode acontecer com você, também, porque eles realmente não parecem fazer nada de diferente.</p><p>Atenção: <em>seu código não vai passar pelo validador se você usar o mesmo ID em mais de um elemento</em>. A validação deve ser importante para todos nós, de modo que, por si só, é algo muito importante. Adiante, mais razões pelas quais um ID deve ser único.</p><h3>Classes não são únicas</h3><ul><li>Você pode usar a <strong>mesma classe</strong> para vários elementos;</li><li>Você pode usar <strong>várias classes para um mesmo elemento</strong>.</li></ul><p>Qualquer informação de estilo que precise ser aplicada a múltiplos elementos em uma página deve ser feita com uma <strong>classe</strong>. Tomemos como uma exemplo uma página com vários “<em>widgets</em>“:</p><pre class="brush: xml;">
&lt;div class=&quot;widget&quot;&gt;&lt;/div&gt;
&lt;div class=&quot;widget&quot;&gt;&lt;/div&gt;
&lt;div class=&quot;widget&quot;&gt;&lt;/div&gt;
</pre><p>Agora, é possível usar a mesma classe “widget” 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? É possível aplicar mais de uma classe a um elemento:</p><pre class="brush: xml;">
&lt;div class=&quot;widget&quot;&gt;&lt;/div&gt;
&lt;div class=&quot;widget big&quot;&gt;&lt;/div&gt;
&lt;div class=&quot;widget&quot;&gt;&lt;/div&gt;
</pre><p>Não há 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á está lá. As diferentes classes são delimitadas por espaços e a maioria dos navegadores permite quaisquer números delas (na verdade, é mais como <em>milhares</em>, o que é muito mais do que realmente é preciso).</p><h3>Não existem padrões de IDs e Classes em nenhum navegador</h3><p>Colocar um nome de classe ou ID em um elemento, por padrão não faz nada a esse elemento.</p><p>Isso é algo que intriga quem é iniciante. Você está trabalhando em um <em>site</em> e descobre que a aplicação de uma classe com um nome em particular resolve um problema que você tem. Então você mexe em outro <em>site</em>, com o mesmo problema, e tenta corrigí-lo da mesma maneira, usando aquele mesmo nome de classe, pensando que o nome da classe, por si só, tem alguma propriedade mágica, apenas para descobrir que não funciona assim…</p><p>Classes e IDs não têm qualquer estilo por si mesmos. É preciso CSS para orientar e aplicar estilos.</p><h3>Códigos de Barra e Números de Série</h3><p>Talvez códigos de barra e números de série sejam uma boa analogia. Tome um iPod, numa loja. Na embalagem há um código de barras. Ele indica à loja que produto é esse; então, quando é escaneado, o código de barras informa exatamente que produto é aquele e quanto custa. É possível saber até sua cor e em qual lugar do armazém ele era mantido. Todos esses iPods têm exatamente o mesmo tipo de código de barras.</p><p>O iPod tem também um número de série que é absolutamente único em relação a qualquer outro iPod (ou outro dispositivo) em todo o mundo. O número de série não informa o preço. Poderia, mas para a loja que o vende esta não seria uma maneira eficaz de armazenar e utilizar essa informação. É muito mais fácil usar um código de barras porque se, por exemplo, o preço muda, é preciso apenas alterar o preço para aquele código de barras, e não para cada número serial do sistema.</p><p>Isso é muito parecido com IDs e Classes. <strong>Informações que são reusadas devem ser mantidas em uma classe e informações que são totalmente únicas devem ser mantidas em um ID.</strong></p><h3>IDs têm uma funcionalidade especial nos navegadores</h3><p>Classes não tem funcionalidades especiais no <em>browser</em>, mas IDs têm um truque muito especial na manga: um “valor de <em>hash</em>” para URLs. Se você tiver um URL como http://seudominio.com#comments, o navegador vai tentar localizar o elemento com o id “comments” e vai automaticamente rolar a página até chegar nesse elemento.</p><p>É importante observar que o <em>browser</em> vai rolar a página até onde quer que o elemento esteja; então, se houver algo de especial, como uma DIV com barra de rolagem (propriedade CSS <em>overflow</em> com valor “auto” ou “scroll”), esta barra de rolagem vai ser deslocada &#8211; rolar para baixo -, também.</p><p>Esta é uma razão importante sobre o porquê é importante ter um ID absolutamente único. Com isso, o navegador sabe até quando rolar.</p><h3>Elementos podem ter ambos, ID e Classes</h3><p>Não é nada ruim você usa ambos, ID e classes em um único elemento. Na verdade, fazer isso na maioria das vezes é uma boa idéia. Tomemos como exemplo o padrão de marcação para item de lista de um comentário no WordPress:</p><pre class="brush: xml;">
&lt;li id=&quot;comment-27299&quot; class=&quot;item&quot;&gt;
</pre><p>Tem uma classe que foi aplicada que talvez se queira usar para estilizar todos os comentários na página, mas também há um único valor de ID (dinamicamente gerado pelo WordPress). Com isso, é facilmente possível fazer um <em>link</em> diretamente a um comentário, em uma página, em especial.</p><h3>CSS sem limites</h3><p>Quanto ao CSS, <strong>não há nada que você possa fazer com um ID que não possa fazer com uma Classe e vice-versa</strong>. Às vezes, quando se está iniciando no estudo de CSS e se tem um problema, tenta-se alternar entre usar ID ou usar Classe. O CSS não se importa, faça o que quiser.</p><h3>Javascript se importa</h3><p>Aqueles que mexem com <em>javascript</em> provavelmente já estão mais em sintonia entre as diferenças entre as Classes e IDs. <em>Javascript</em> depende da existência de um elemento de página com ID único, ou então a comumente utilizada função <a
title="Mais sobre getElementById, no W3Schools." href="http://www.w3schools.com/HTMLDOM/met_doc_getelementbyid.asp">getElementById</a> não seria confiá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ão fácil é adicionar e remover classes de elementos de página. É uma função nativa no jQuery. Veja que tal função não existe para IDs. Não é responsabilidade do <em>javascript</em> manipular estes valores, porque ele causaria mais problemas que seria útil…</p><h3>Se você não precisa deles, não os use</h3><p>Como você pode ver, classes e IDs são muito importantes e nós os utilizamos todos os dias para estilizar páginas e manipular aquilo que é preciso. Entretanto, você deve usá-los com critério e semanticamente.</p><p>Isto significa evitar coisas do tipo:</p><pre class="brush: xml;">
&lt;a href=&quot;http://css-tricks.com&quot; class=&quot;link&quot;&gt;CSS-Tricks.com&lt;/a&gt;
</pre><p>Já sabemos: este elemento é um <em>link</em>, é um elemento âncora. Não há nada de especial aqui a ponto de ser preciso especificar uma classe, já que é possível aplicar o estilo na própria tag (”a”).</p><p>Evite este tipo de coisa, também:</p><pre class="brush: xml;">
&lt;div id=&quot;coluna-direita&quot;&gt;
</pre><p>O ID é corretamente utilizado aqui, já que, provavelmente, a página terá somente uma única coluna da direita, mas o nome é inadequado. Descreva o contexto do elemento, não onde está ou como se parece. Um ID “barra-lateral” seria melhor.mais isso não tem tanta importacia, eu prego o seguinte: se você entende o que fez e ta certo, então faça a sua maneira&#8230;</p><p>Ta bom né, agora vamos aos creditos:<br
/> Eu é claro, e tambem ao site <a
href="http://css-tricks.com" target="_blank">CSS tricks</a> de onde foi retirado parte desse post&#8230;espero que tenham gostado e entendido (ficou meio técnico o post).</p><p>Até a proxima.<span
class="clear"></span></p> ]]></content:encoded> <wfw:commentRss>http://www.mateussouza.com/blog/css/diferenca-entre-id-e-class/feed</wfw:commentRss> <slash:comments>9</slash:comments> </item> <item><title>Dicas Para Trabalhar com CSS (Cascading Style Sheets)</title><link>http://www.mateussouza.com/blog/css/dicas-para-trabalhar-com-css-cascading-style-sheets</link> <comments>http://www.mateussouza.com/blog/css/dicas-para-trabalhar-com-css-cascading-style-sheets#comments</comments> <pubDate>Fri, 28 Nov 2008 21:21:24 +0000</pubDate> <dc:creator>Mateus Souza</dc:creator> <category><![CDATA[CSS]]></category> <category><![CDATA[Dicas]]></category><guid
isPermaLink="false">http://www.mateussouza.com/?p=417</guid> <description><![CDATA[Hoje vou postar algumas dicas de CSS, pra ajudar novos designers e até os mais experientes, são dicas simples porem eficazes, vamos as dicas: Pare com div1, div2&#8230; Evite dar nomes como div1, div2, div3 aos seus elementos. Eles não explicam nada, e quando você for corrigir algum erro, sei la só vai queimar o [...]]]></description> <content:encoded><![CDATA[<p
style="text-align: center;"><img
class="aligncenter" src="http://nodstrum.com/images/CSSEditLogo.png" alt="CSSEditLogo Dicas Para Trabalhar com CSS (Cascading Style Sheets)"  title="Dicas Para Trabalhar com CSS (Cascading Style Sheets)" /></p><p>Hoje vou postar algumas dicas de CSS, pra ajudar novos designers e até os mais experientes, são dicas simples porem eficazes, vamos as dicas:</p><h3><em>Pare com div1, div2&#8230;</em></h3><p>Evite dar nomes como <em>div1</em>, <em>div2</em>, <em>div3</em> aos seus elementos. Eles não explicam nada, e quando você for corrigir algum erro, sei la só vai queimar o neurônios sem precisão . Da mesma maneira, <em>barra_azul</em> não faz muito sentido: se você mudar a cor do site, onde vai estar a barra azul? Prefira nomes explicativos, como <em>menu</em> ou <em>barra_links</em>.</p><h3>Cuidado com Maiúsculas e minúsculas</h3><p><span
id="more-417"></span></p><p>Nomes de elementos fazem diferença entre letras maiúsculas e minúsculas: <em>BarraLinks</em> é diferente de <em>barralinks</em>.          Preste atenção na hora de usar seu elemento no HTML.</p><h3>Declaração <em>id</em> x <em>class</em></h3><p>Para elementos que aparecem apenas uma vez no layout (menu, rodapé, cabeçalho, etc) prefira a declaração id, precedida por um sinal de # (ex. #menu). Para elementos que vão aparecer várias vezes, utilize a declaração class, precedida por um ponto (como .postagems).</p><h3>Use a mesma declaração entre vários elementos comuns</h3><p>Se vários elementos terão características em comum, declare-os todos de uma vez, separados por vírgula, assim diminui o a linha de código e agiliza bastante:</p><pre class="brush: css;">
h1, h2, h3, h4 {
font-family: Arial, Helvetica, Sans-Serif;
}
</pre><h3>Organize-se e lembre da hierarquia</h3><p>Por ser uma folha de estilo <em>em cascata</em>, a última declaração é a que prevalece. Preste atenção para não declarar um elemento duas vezes: na hora da manutenção, você pode fazer a alteração na primeira e se perguntar porque ela não funciona, quando na verdade uma segunda declaração está perdida no meio do seu código (por isso organização é fundamental!), preste atenção viu <img
src='http://www.mateussouza.com/wordpress/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' title="Dicas Para Trabalhar com CSS (Cascading Style Sheets)" /> .</p><h3>Use comentários</h3><p>Quando você utilizar o CSS para efeitos mais avançados, como um <a
href="http://www.infowester.com/tut_menu_abas.php" target="_blank">menu          em abas</a>, comente seu código para não esquecer o que cada parte dele faz, é só adicionar/* para abrir um comentário e */ para fechar.ex</p><pre class="brush: css;">
#menu ul li a
       /* aba normal */
       {background: #444; color: #FFF; border: 1px #FFF solid;}

#menu ul li a:hover{
       /* aba selecionada*/
       {background: #FFF; color: #F00; border: #F00 1px solid;}&lt;/pre&gt;
</pre><h3>Declare as unidades</h3><p>Quando trabalhar com valores diferentes de zero, declare as unidades          (<em>px</em>, <em>pt</em>, etc). Cada navegador assume uma unidade padrão quando ela não é especificada, gerando resultados diferentes em cada navegador, uma coisa simples como essa pode pesar e muiito na sua imagem na web.</p><p>Bom é so isso e até a próxima.<span
class="clear"></span></p> ]]></content:encoded> <wfw:commentRss>http://www.mateussouza.com/blog/css/dicas-para-trabalhar-com-css-cascading-style-sheets/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Image Fade &#8211; Tutorial Jquery</title><link>http://www.mateussouza.com/blog/css/image-fade-tutorial-jquery</link> <comments>http://www.mateussouza.com/blog/css/image-fade-tutorial-jquery#comments</comments> <pubDate>Tue, 23 Sep 2008 23:14:23 +0000</pubDate> <dc:creator>Mateus Souza</dc:creator> <category><![CDATA[CSS]]></category> <category><![CDATA[HTML]]></category> <category><![CDATA[Javascript]]></category> <category><![CDATA[Tutoriais]]></category> <category><![CDATA[jQuery]]></category><guid
isPermaLink="false">http://www.mateussouza.com/?p=239</guid> <description><![CDATA[Vamos recriar o efeito usado no site Dragon Interactive, vai ficar igualzinho, até em inglês:),não vou entrar em detalhes só vou mostrar como funciona e o código, pois acho que você já deve estar cansado de alguns processos utilizados em tutoriais anteriores e já deve saber como fazer.Mas se você é novo aqui no site [...]]]></description> <content:encoded><![CDATA[<p
style="text-align: center;"><p><a
href="http://www.mateussouza.com/blog/css/image-fade-tutorial-jquery"><img
class="aligncenter size-full wp-image-1136" title="Image Fade - Dragon Interactive" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2008/09/untitled-21.jpg" alt="Image Fade - Dragon Interactive" width="500" height="284" /></a></p><p>Vamos recriar o efeito usado no site <a
href="http://dragoninteractive.com/" target="_blank">Dragon Interactive</a>, vai ficar igualzinho, até em inglês:),não vou entrar em detalhes só vou mostrar como funciona e o código, pois acho que você já deve estar cansado de alguns processos utilizados em tutoriais anteriores e já deve saber como fazer.Mas se você é novo aqui no site e tal, veja meus tutoriais mais antigos é bem fácil, basta <a
href="http://www.mateussouza.com/?cat=7" target="_blank">clicar aqui</a>.</p><p>Demostração:<br
/> <a
href="http://jqueryfordesigners.com/demo/fade-revisited.html" target="_blank"><strong>Aqui</strong></a></p><h3>HTML:</h3><pre class="brush: xml;">
&lt;ul id=&quot;navigation&quot;&gt;
    &lt;li class=&quot;highlight&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;home&quot;&gt;&lt;span&gt;Home&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
    &lt;li class=&quot;highlight&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;services&quot;&gt;&lt;span&gt;Services&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
    &lt;li class=&quot;highlight&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;portfolio&quot;&gt;&lt;span&gt;Portfolio&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
    &lt;li class=&quot;highlight&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;about&quot;&gt;&lt;span&gt;About&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
    &lt;li class=&quot;highlight&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;contact&quot;&gt;&lt;span&gt;Contact&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</pre><h3>CSS</h3><pre class="brush: css;">
#navigation {
  list-style: none;
}

#navigation li {
  float: left;
}

#navigation a * {
  display: none;
}

#navigation a,
#navigation a .hover {
  height: 70px;
	position: relative;
	display: block;
	background: url(images/dragon-sprite.jpg) 0 0 no-repeat;
}

/* individual navigation items */
#navigation a.home {
  background-position: 0 0;
  width: 102px;
}

#navigation .highlight a.home:hover,
#navigation a.home .hover {
  background-position: 0 -280px;
  width: 102px;
}

#navigation a.services {
  background-position: -102px -140px;
  width: 115px;
}

#navigation .highlight a.services:hover,
#navigation a.services .hover {
  background-position: -102px -280px;
}

#navigation a.portfolio {
  background-position: -217px 0;
  width: 120px;
}

#navigation .highlight a.portfolio:hover,
#navigation a.portfolio .hover {
  background-position: -218px -280px;
}

#navigation a.about {
  background-position: -337px 0;
  width: 100px;
}

#navigation .highlight a.about:hover,
#navigation a.about .hover {
  background-position: -339px -280px;
}

#navigation a.contact {
  background-position: -437px 0;
  width: 115px;
}

#navigation .highlight a.contact:hover,
#navigation a.contact .hover {
  background-position: -440px -280px;
}
</pre><h3>jQuery</h3><pre class="brush: jscript;">
 $(function () {
        if ($.browser.msie &amp;&amp; $.browser.version &lt; 7) return;

        $('#navigation li')
            .removeClass('highlight')
            .find('a')
            .append('&lt;span class=&quot;hover&quot; /&gt;').each(function () {
                    var $span = $('&gt; span.hover', this).css('opacity', 0);
                    $(this).hover(function () {
                        // on hover
                        $span.stop().fadeTo(500, 1);
                    }, function () {
                        // off hover
                        $span.stop().fadeTo(500, 0);
                    });
                });

    });
</pre><p>Se você quiser ver o vídeo do cara que recrio esse efeito &#8211; pois não foi eu <img
src='http://www.mateussouza.com/wordpress/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' title="Image Fade   Tutorial Jquery" /> &#8211; veja logo abaixo:</p><p><a
class="movie" href="http://jqueryfordesigners.com/media/image-fade-revisited.mov">Ver video</a> (<a
href="http://jqueryfordesigners.com/video.php?f=image-fade-revisited.flv">Versão em flash</a>)</p><p><a
class="movie" href="http://jqueryfordesigners.com/media/image-fade-revisited-ie6.mov">IE6 &#8211; Se você usa o IE6 é recomendável ver este video</a> (<a
href="http://jqueryfordesigners.com/video.php?f=image-fade-revisited-ie6.flv">Versão em flash</a>)</p><p>Qualquer dúvida posta um comentário.<span
class="clear"></span></p> ]]></content:encoded> <wfw:commentRss>http://www.mateussouza.com/blog/css/image-fade-tutorial-jquery/feed</wfw:commentRss> <slash:comments>4</slash:comments> <enclosure
url="http://jqueryfordesigners.com/media/image-fade-revisited-ie6.mov" length="1646995" type="video/quicktime" /> <enclosure
url="http://jqueryfordesigners.com/media/image-fade-revisited.mov" length="30036140" type="video/quicktime" /> </item> <item><title>10 Sets de Ícones Para Designers e Desenvolvedores</title><link>http://www.mateussouza.com/blog/css/10-sets-de-icones-para-designers-e-desenvolvedores</link> <comments>http://www.mateussouza.com/blog/css/10-sets-de-icones-para-designers-e-desenvolvedores#comments</comments> <pubDate>Fri, 19 Sep 2008 01:58:49 +0000</pubDate> <dc:creator>Mateus Souza</dc:creator> <category><![CDATA[CSS]]></category> <category><![CDATA[Dicas]]></category><guid
isPermaLink="false">http://www.mateussouza.com/?p=225</guid> <description><![CDATA[Uma pequena lista com alguns sets de ícones para te ajudar na hora de fazer um site.Vamos aos ícones: 1. Web development icons Download Web development icons contem 60 icones estilo web 2.0 (24&#215;24). 2. Function free icon set Download Uma ótima coleção por Liam McKay. 3. Pixelicious Download 150 ícones legais 4. Social Web [...]]]></description> <content:encoded><![CDATA[<p>Uma pequena lista com alguns sets de ícones para te ajudar na hora de fazer um site.Vamos aos ícones:<br
/> <strong>1. Web development icons</strong> <a
href="http://www.box.net/shared/gmvxpxo9dm">Download</a><br
/> <em>Web development icons</em> contem 60 icones estilo web 2.0 (24&#215;24).</p><p><img
class="aligncenter size-medium wp-image-1150" title=" Web development icons" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2008/09/icons11-300x237.png" alt=" Web development icons" width="300" height="237" /></p><p><strong>2. Function free icon set</strong> <a
href="http://www.box.net/shared/5almelu20s">Download</a><br
/> Uma ótima coleção por <a
href="http://www.wefunction.com/">Liam McKay</a>.</p><p><img
class="aligncenter size-medium wp-image-1151" title="Function free icon set" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2008/09/icons21-300x168.jpg" alt="Function free icon set" width="300" height="168" /></p><p><strong>3. Pixelicious</strong> <a
href="http://www.box.net/shared/rfo2qqagim">Download</a><br
/> 150 ícones legais</p><p><img
class="aligncenter size-full wp-image-1153" title="Pixelicious" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2008/09/icons61.png" alt="Pixelicious" width="355" height="80" /></p><p><strong>4. Social Web Button</strong> <a
href="http://www.box.net/shared/7m0lpmd3x4">Download</a><br
/> Uma coleção de ícones sociais, bom para blogs</p><p><img
class="aligncenter size-full wp-image-1147" title="Social Web Button " src="http://www.mateussouza.com/wordpress/wp-content/uploads/2008/09/icon41.png" alt="Social Web Button " width="400" height="173" /></p><p><strong>5. Sweetie Pack</strong> <a
href="http://www.box.net/shared/q2ilahzm88">Download </a><br
/> <em>Sweetie Pack</em> é simples e bonito com 100 ícones.</p><p><img
class="aligncenter size-full wp-image-1156" title="Sweetie Pack " src="http://www.mateussouza.com/wordpress/wp-content/uploads/2008/09/sweetie1.png" alt="Sweetie Pack " width="361" height="56" /></p><p><strong>6. FeedIcons</strong> <a
href="http://www.box.net/shared/nrlzqchfft">Download</a><br
/> Set para feed</p><p><img
class="aligncenter size-full wp-image-1154" title="FeedIcons" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2008/09/icons81.png" alt="FeedIcons" width="445" height="80" /></p><p><strong>7. Mini Icons</strong> <a
href="http://www.box.net/shared/yokzsgti7h">Download</a></p><p><img
class="aligncenter size-full wp-image-1148" title="Mini Icons" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2008/09/icon71.png" alt="Mini Icons" width="443" height="127" /></p><p><strong>8. Tango Icons Set</strong> <a
href="http://tango.freedesktop.org/Tango_Icon_Library">Download</a><br
/> Esse eu gostei pra caramba, é até usado no site do ubuntu se não me engano.</p><p><img
class="aligncenter size-full wp-image-1155" title="Tango Icons Set" src="http://www.mateussouza.com/wordpress/wp-content/uploads/2008/09/icons91.png" alt="Tango Icons Set" width="311" height="381" /></p><div
style="text-align: center;"><div
style="text-align: left;"><p><strong>9. Monofactor</strong> <a
href="http://www.monofactor.com/files/bet_one.zip">Download</a></p><p><img
class="aligncenter size-full wp-image-1149" title="Monofactor " src="http://www.mateussouza.com/wordpress/wp-content/uploads/2008/09/icon101.png" alt="Monofactor " width="229" height="228" /></p></div></div><p><strong>10. Aquaticus Social Icons</strong> <a
href="http://www.box.net/shared/p67cdd05cg">Download</a><br
/> <em>Mais ícones sociais para download</em> (60&#215;60, 48&#215;48, 24&#215;24, 16&#215;16):</p><p><img
class="aligncenter size-full wp-image-1152" title="Aquaticus Social Icons " src="http://www.mateussouza.com/wordpress/wp-content/uploads/2008/09/icons31.jpg" alt="Aquaticus Social Icons " width="341" height="184" /><span
class="clear"></span></p> ]]></content:encoded> <wfw:commentRss>http://www.mateussouza.com/blog/css/10-sets-de-icones-para-designers-e-desenvolvedores/feed</wfw:commentRss> <slash:comments>1</slash:comments> </item> </channel> </rss>
<!-- Served from: www.mateussouza.com @ 2010-09-11 00:05:24 by W3 Total Cache -->