Curso de CSS (Cascading Style Sheets)

Cur­so de CSS (Cas­cad­ing Style Sheets)

O que é CSS?

CSS é chama­do de lin­guagem Cas­cad­ing Style Sheet e é usa­do para estilizar ele­men­tos escritos em uma lin­guagem de mar­cação como HTML. O CSS sep­a­ra o con­teú­do da rep­re­sen­tação visu­al do site. Pense  na dec­o­ração da sua pági­na. Uti­lizan­do o CSS é pos­sív­el alter­ar a cor do tex­to e do fun­do, fonte, espaça­men­to entre pará­grafos, cri­ar tabelas, usar vari­ações de lay­outs, ajus­tar ima­gens para suas respec­ti­vas telas e assim por diante.

CSS foi desen­volvi­do pelo W3C (World Wide Web Con­sor­tium) em 1996, por uma razão bem sim­ples. O HTML não foi pro­je­ta­do para ter tags que aju­dari­am a for­matar a pági­na. Você dev­e­ria ape­nas escr­ev­er a mar­cação para o site.

Tags como <font> foram intro­duzi­das na ver­são 3.2 do HTML e causaram muitos prob­le­mas para os desen­volve­dores. Como os sites tin­ham difer­entes fontes, cores e esti­los, era um proces­so lon­go, doloroso e caro para ree­scr­ev­er o códi­go. Assim, o CSS foi cri­a­do pelo W3C para resolver este prob­le­ma.

A relação entre HTML e CSS é bem forte. Como o HTML é uma lin­guagem de mar­cação (o alicerce de um site) e o CSS é foca­do no esti­lo (toda a estéti­ca de um site), eles andam jun­tos.

CSS não é tec­ni­ca­mente uma neces­si­dade, mas provavel­mente você não gostaria de olhar para um site que usa ape­nas HTML, isso pare­ce­ria com­ple­ta­mente aban­don­a­do.

Vantagens do CSS

A difer­ença entre um site que imple­men­ta CSS e out­ro que não o usa é gigan­tesca e notáv­el.

Você já deve ter vis­to um site que não car­rega com­ple­ta­mente ou tem um plano de fun­do bran­co com tex­to azul e pre­to. Isso sig­nifi­ca que a parte CSS do site não foi car­rega­da cor­re­ta­mente ou não existe.

E é assim que um site somente com HTML se paree. Acred­i­to que você vai con­cor­dar comi­go de que isso não é muito boni­to, cer­to?

Antes de usar CSS, toda a estiliza­ção tin­ha que ser incluí­da na mar­cação HTML. Isso sig­nifi­ca que você deve descr­ev­er sep­a­rada­mente todo o plano de fun­do, as cores das fontes, os alin­hamen­tos, etc.

Antes de usar CSS, toda a estiliza­ção tin­ha que ser incluí­da na mar­cação HTML. Isso sig­nifi­ca que você dev­e­ria descr­ev­er sep­a­rada­mente todo o plano de fun­do, as cores das fontes, os alin­hamen­tos, etc.

Mas o CSS per­mite que você estilize tudo em um arqui­vo difer­ente, crian­do assim o esti­lo sep­a­rada­mente e, mais tarde, faça inte­gração do arqui­vo CSS na parte supe­ri­or da mar­cação HTML. Isso man­tém a mar­cação HTML limpa e fácil de man­ter.

Resu­min­do, com o CSS você não pre­cisa mais escr­ev­er repeti­da­mente como os ele­men­tos indi­vid­u­ais se pare­cem. Isso econ­o­miza tem­po, encur­ta o códi­go e diminui a chance de erros.

O CSS per­mite que você ten­ha vários esti­los em uma pági­na HTML, tor­nan­do as pos­si­bil­i­dades de per­son­al­iza­ção quase infini­tas. Hoje em dia, isso está se tor­nan­do mais uma neces­si­dade do que um sim­ples recur­so.

Como CSS Funciona

O CSS é uma fer­ra­men­ta muito potente que pos­si­bili­ta cri­ar diver­sas fun­cional­i­dades ao invés de usar JavaScript ou out­ra lin­guagem mais pesa­da. Se usa­do com mod­er­ação, CSS pode via­bi­lizar uma óti­ma exper­iên­cia ao desen­volve­dor e usuários das pági­nas web.

Com o Cas­cad­ing Style Sheets é pos­sív­el cri­ar ani­mações com­plexas, cri­ar efeitos com uso de par­al­lax, que faz pare­cer que a imagem de fun­do tem uma pro­fun­di­dade difer­ente um

O que é CSS?

CSS é chama­do de lin­guagem Cas­cad­ing Style Sheet e é usa­do para estilizar ele­men­tos escritos em uma lin­guagem de mar­cação como HTML. O CSS sep­a­ra o con­teú­do da rep­re­sen­tação visu­al do site. Pense  na dec­o­ração da sua pági­na. Uti­lizan­do o CSS é pos­sív­el alter­ar a cor do tex­to e do fun­do, fonte, espaça­men­to entre pará­grafos, cri­ar tabelas, usar vari­ações de lay­outs, ajus­tar ima­gens para suas respec­ti­vas telas e assim por diante.

CSS foi desen­volvi­do pelo W3C (World Wide Web Con­sor­tium) em 1996, por uma razão bem sim­ples. O HTML não foi pro­je­ta­do para ter tags que aju­dari­am a for­matar a pági­na. Você dev­e­ria ape­nas escr­ev­er a mar­cação para o site.

Tags como <font> foram intro­duzi­das na ver­são 3.2 do HTML e causaram muitos prob­le­mas para os desen­volve­dores. Como os sites tin­ham difer­entes fontes, cores e esti­los, era um proces­so lon­go, doloroso e caro para ree­scr­ev­er o códi­go. Assim, o CSS foi cri­a­do pelo W3C para resolver este prob­le­ma.

A relação entre HTML e CSS é bem forte. Como o HTML é uma lin­guagem de mar­cação (o alicerce de um site) e o CSS é foca­do no esti­lo (toda a estéti­ca de um site), eles andam jun­tos.

CSS não é tec­ni­ca­mente uma neces­si­dade, mas provavel­mente você não gostaria de olhar para um site que usa ape­nas HTML, isso pare­ce­ria com­ple­ta­mente aban­don­a­do.

Vantagens do CSS

A difer­ença entre um site que imple­men­ta CSS e out­ro que não o usa é gigan­tesca e notáv­el.

Você já deve ter vis­to um site que não car­rega com­ple­ta­mente ou tem um plano de fun­do bran­co com tex­to azul e pre­to. Isso sig­nifi­ca que a parte CSS do site não foi car­rega­da cor­re­ta­mente ou não existe.

E é assim que um site somente com HTML se paree. Acred­i­to que você vai con­cor­dar comi­go de que isso não é muito boni­to, cer­to?

Antes de usar CSS, toda a estiliza­ção tin­ha que ser incluí­da na mar­cação HTML. Isso sig­nifi­ca que você deve descr­ev­er sep­a­rada­mente todo o plano de fun­do, as cores das fontes, os alin­hamen­tos, etc.

Antes de usar CSS, toda a estiliza­ção tin­ha que ser incluí­da na mar­cação HTML. Isso sig­nifi­ca que você dev­e­ria descr­ev­er sep­a­rada­mente todo o plano de fun­do, as cores das fontes, os alin­hamen­tos, etc.

Mas o CSS per­mite que você estilize tudo em um arqui­vo difer­ente, crian­do assim o esti­lo sep­a­rada­mente e, mais tarde, faça inte­gração do arqui­vo CSS na parte supe­ri­or da mar­cação HTML. Isso man­tém a mar­cação HTML limpa e fácil de man­ter.

Resu­min­do, com o CSS você não pre­cisa mais escr­ev­er repeti­da­mente como os ele­men­tos indi­vid­u­ais se pare­cem. Isso econ­o­miza tem­po, encur­ta o códi­go e diminui a chance de erros.

O CSS per­mite que você ten­ha vários esti­los em uma pági­na HTML, tor­nan­do as pos­si­bil­i­dades de per­son­al­iza­ção quase infini­tas. Hoje em dia, isso está se tor­nan­do mais uma neces­si­dade do que um sim­ples recur­so.

Como CSS Funciona

O CSS é uma fer­ra­men­ta muito potente que pos­si­bili­ta cri­ar diver­sas fun­cional­i­dades ao invés de usar JavaScript ou out­ra lin­guagem mais pesa­da. Se usa­do com mod­er­ação, CSS pode via­bi­lizar uma óti­ma exper­iên­cia ao desen­volve­dor e usuários das pági­nas web.

Com o Cas­cad­ing Style Sheets é pos­sív­el cri­ar ani­mações com­plexas, cri­ar efeitos com uso de par­al­lax, que faz pare­cer que a imagem de fun­do tem uma pro­fun­di­dade difer­ente um dos out­ros, cri­ar sites inter­a­tivos e tam­bém jogos com HTML5 e CSS3.

Veja out­ros tra­bal­hos incríveis neste site e se inspire.

O CSS usa uma sin­taxe sim­ples basea­da em inglês com um con­jun­to de regras que o gov­er­nam. Como men­cionamos ante­ri­or­mente, o HTML nun­ca teve a intenção de usar ele­men­tos de esti­lo, ape­nas a mar­cação da pági­na. Foi cri­a­do para descr­ev­er ape­nas o con­teú­do. Por exem­p­lo: <p>Este é um parágrafo.</p>.

Mas como você estiliza o pará­grafo? A estru­tu­ra da sin­taxe CSS é bem sim­ples. Tem um sele­tor e um blo­co de declar­ação. Você sele­ciona um ele­men­to e depois declara o que dese­ja faz­er com ele. Bas­tante sim­ples, cer­to?

Mas tem algu­mas regras que você pre­cisa saber. Isso tam­bém é sim­ples, não se pre­ocupe.

O sele­tor apon­ta para o ele­men­to HTML que você dese­ja estilizar. O blo­co de declar­ação con­tém uma ou mais declar­ações sep­a­radas por pon­to e vír­gu­la.

Cada declar­ação inclui um nome de pro­priedade CSS e um val­or, sep­a­ra­dos por dois pon­tos. Uma declar­ação CSS sem­pre ter­mi­na com um pon­to-e-vír­gu­la e os blo­cos de declar­ação são cer­ca­dos por chaves.

Vamos ver um exem­p­lo:

Todos os ele­men­tos <p> serão estiliza­dos e serão col­ori­dos de azul e negrito.<style>

Em out­ro exem­p­lo, todos os ele­men­tos <p> serão cen­tral­iza­dos, com taman­ho 16x e de cor pink.<style>

Anatomia de um comando CSS

O CSS estip­u­la regras para o arqui­vo em html. Com cada regra é pos­sív­el estilizar o con­teú­do todo ou somente deter­mi­na­dos ele­men­tos. Por isso enten­da, um coman­do bási­co é com­pos­to por sele­tor e declar­ações, que con­tém pro­priedade e val­or.

SELETOR {PROPRIEDADE: VALOR}

A sin­taxe do CSS é muito sim­ples de apren­der. O sele­tor sele­ciona quais ele­men­tos em html rece­berão a pro­priedade. Pode ser p (pará­grafo) ou o body (cor­po da sua pági­na). Já a pro­priedade pode ser a cor ou algo mais especí­fi­co como cor do fun­do (back­ground). E por últi­mo o val­or, que deter­mi­na o val­or da pro­priedade.

Vamos sim­u­lar um exem­p­lo. Dig­amos que o obje­ti­vo é mudar a fonte de uma tag h1. Para isso podemos usar h1 {font-size: 20px;}

  • h1 – é o sele­tor. Neste caso sele­cionamos o h1.
  • font-size – é a declar­ação que con­tém  a pro­priedade (font-size) e o val­or é (20px).

Lista de comandos básicos CSS

São tan­tas opções entre sele­tores, pro­priedades e val­ores que pode ser muito difí­cil para um desen­volve­dor lem­brar de todos eles ape­nas con­fian­do na memória. Por isso decidi­mos cri­ar uma Lista de Coman­dos Bási­cos CSS (CSS3 Inclu­so) que servirá de aju­da para você que está apren­den­do sobre o que é CSS.

 Este doc­u­men­to foi estrate­gi­ca­mente estru­tu­ra­do e divi­di­do em seções para facil­i­tar sua leitu­ra. Faça down­load da Lista de Coman­dos CSS em PDF cli­can­do aqui e apro­funde seus con­hec­i­men­tos sobre o que é CSS.

Estilos CSS Interno, Externo e Inline

Anal­is­are­mos cada esti­lo de for­ma ráp­i­da! Para uma expli­cação detal­ha­da, acesse o link que vamos disponi­bi­lizar logo abaixo.

Vamos começar com o esti­lo inter­no. Esti­los CSS feitos des­ta for­ma são car­rega­dos cada vez que um site é atu­al­iza­do, o que pode aumen­tar o tem­po de car­rega­men­to. Além dis­so, você não poderá usar o mes­mo esti­lo CSS em várias pági­nas, pois está con­ti­do em uma úni­ca pági­na. Mas a van­tagem dis­so é que ter tudo em uma pági­na facili­ta o com­par­til­hamen­to do mod­e­lo para uma visu­al­iza­ção.

O méto­do exter­no pode ser o mais con­ve­niente. Tudo é feito exter­na­mente em um arqui­vo .css. Isso sig­nifi­ca que você pode faz­er todo o esti­lo em um arqui­vo sep­a­ra­do e aplicar o CSS a qual­quer pági­na dese­ja­da. O esti­lo exter­no tam­bém pode mel­ho­rar o tem­po de car­rega­men­to.

Por fim, tem tam­bém o esti­lo Inline do CSS. Inline tra­bal­ha com ele­men­tos especí­fi­cos que pos­suem a tag <style>. Cada com­po­nente deve ser estiliza­do, por isso talvez não seja o mel­hor ou o mais rápi­do para lidar com CSS. Mas pode ser útil, por exem­p­lo, para alter­ar um úni­co ele­men­to, visu­alizar rap­i­da­mente as alter­ações ou se não tiv­er aces­so aos arquiv­os CSS.

Criando uma folha de estilo

Para cri­ar uma fol­ha de esti­los é bem sim­ples, bas­ta abrir seu edi­tor de códi­gos, como o Sub­lime, e cri­ar um doc­u­men­to novo.

Depois de cri­a­do, salve como estilo.css, mes­mo sem ain­da ter escrito nada (este .css é o que define um arqui­vo ser recon­heci­do pelo nave­g­ador como a fol­ha de esti­lo).

Como criar um folha de estilo CSS

Assim que for sal­vo, o edi­tor de tex­to vai con­seguir ler o arqui­vo com mais facil­i­dade, até mes­mo com sug­estões de auto com­plete enquan­to digi­ta os códi­gos da fol­ha de esti­lo, como mostra o print abaixo:

Como integrar o CSS no HTML?

Após sal­var como estilo.css pre­cisamos colo­car o arqui­vo em nos­so arqui­vo HTML, porque é ele quem vai car­regar o CSS, o CSS soz­in­ho não faz site! E é com tags de refer­ên­cia que você avisa ao HTML que existe um arqui­vo de esti­lo para ele, veja:

<link rel=”stylesheet” type=”text/css” href=”estilo.css”>

Esta tag vai indicar ao HTML que tem um arqui­vo CSS para ser adi­ciona­do à  pági­na. Isto deve ser adi­ciona­do den­tro da tag <head> </head> do seu HTML, como pode ver nesse print:

Como incorporar CSS no Html

Ago­ra abra o doc­u­men­to esti­lo .css com o Sub­lime, que provavel­mente está na mes­ma pas­ta do nos­so HTML.

Incorporando CSS no HTML

A par­tir des­ta últi­ma imagem, vamos enten­der como o CSS fun­ciona com três parâmet­ros bási­cos:

Elementos Básicos do CSS

Os ele­men­tos são tags do HTML, #id e .classe.

1. Tags HTML

2. Classes CSS

Cri­ar e usar uma classe CSS é sim­ples. No doc­u­men­to CSS bas­ta colo­car .nome-da-classe-que-dese­ja . Abaixo cri­amos a classe títu­lo:

Criando classes no CSS

Note que existe um pon­to (.) antes do nome da classe. Isso faz com que o CSS enten­da que se está crian­do uma classe para ser usa­da no HTML.

Para se adi­cionar essa classe que cri­amos den­tro do CSS, bas­ta que na tag HTML ten­ha o parâmetro class=””.

Obser­vação: den­tro das aspas, não pre­cisa usar o pon­to (.) antes da classe pois o nome class no HTML já avisa para o CSS que é para ele bus­car pelo nome da classe com “.”

Criando classe título no CSS

Lem­bran­do que uma tag HTML, como h1 ou qual­quer out­ra, pode ter mais de uma classe, bas­ta sep­a­rá-las com espaço como mostra no exem­p­lo abaixo:

<h1 class=”titulo fonte-grande sublinhado”>Melhor site </h1>

Nes­ta tag foram usadas três class­es: “tit­u­lo”, “fonte-grande” e “sub­lin­hado”.

Mas para que todas estas class­es ten­ham efeito épre­ciso criá-las no CSS. Veja como cri­amos estas class­es:

Criando diversas classes no html
Exemplo de uso de CSS

Quan­do abrir­mos nos­so HTML o títu­lo dev­erá ficar assim:

3- Criando Id’s CSS:

O uso dos Id’s em CSS é pare­ci­do com as class­es, mas as prin­ci­pais difer­enças são que os id’s são iden­ti­fi­ca­dos com # e só podem ser usa­dos um id por tag html. Para adi­cionar um id ao HTML, adi­cione como parâmetro id=””.

Veja que a quan­do usamos no HTML, tam­bém excluí­mos o #  do id da mes­ma for­ma que excluí­mos o . da classe.

Criando ID no CSS

Dessa for­ma o botão dev­erá ficar assim:

criando botão com CSS

Dica: este parâmetro de ID’s não é o mais apro­pri­a­do para se usar em uma pági­na para muitos botões pois pode causar con­fli­tos com a lin­guagem de pro­gra­mação JavaScript, que uti­liza nor­mal­mente dos ID’s no HTML para realizar ações mais com­plexas.

Como adicionar CSS no HTML sem a tag <link>?

Exis­tem duas out­ras maneiras de se adi­cionar CSS no HTML, ape­sar de não serem recomen­dadas dev­i­do a um padrão ado­ta­do mundial­mente, é nos­so dev­er te mostrar como faz.

1- Adicionar CSS no HTML sem uso do arquivo externo

Você pode adi­cionar o CSS colo­can­do o esti­lo den­tro do próprio HTML, sem usar um arqui­vo CSS exter­no como mostra o exem­p­lo abaixo:

Como adicionar CSS no HTML sem a tag link

Neste exem­p­lo, o esti­lo fica den­tro do HTML mes­mo com o uso da tag <style> den­tro da tag <head>. Isso faz com que tudo fique cen­tral­iza­do em um úni­co doc­u­men­to.

E por que não é recomen­da­do? Quan­do há muitas lin­has de esti­lo isso pode causar uma demo­ra ao abrir a pági­na uma vez que o nave­g­ador lê o seu doc­u­men­to de cima para baixo, lin­ha por lin­ha. Então se tiv­er muitas lin­has de esti­lo para ler, vai demor­ar mais para o con­teú­do da pági­na ser mostra­do.

Por isso o ide­al é usar a tag <link> para que, ao invés de ler muitas lin­has de esti­lo, o nave­g­ador leia somente uma refer­ên­cia para out­ro arqui­vo e assim faz­er com que seu con­teú­do seja car­rega­do mais rap­i­da­mente.

2- Adicionar CSS no HTML utilizando o parâmetro style

Você pode adi­cionar CSS no HTML uti­lizan­do o parâmetro style em uma tag html especí­fi­ca. Mas isso afe­tará somente aque­la tag e não todas as demais tags com o mes­mo nome, então ao invés de usar­mos os parâmet­ros id=”” ou  class=””, uti­lizare­mos o parâmetro style=””:

<h1 style=”font-size: 3rem;color: #333;text-align: cen­ter;”>

Veja como fica:

Adicionando css no html com parâmetro Style

E por que não é recomen­da­do? Este tipo de uso de esti­los se tor­na um prob­le­ma caso out­ros ele­men­tos ten­ham as mes­mas car­ac­terís­ti­cas do seu títu­lo, por exem­p­lo. Com isso, você teria que copi­ar todo o parâmetro style da tag h1.

Diante de dis­so, con­cluí­mos tam­bém que o mais recomen­da­do é o uso de class­es através de um arqui­vo de esti­lo exter­no ao CSS. Assim con­seguimos usar os esti­los de for­ma mais limpa e ráp­i­da e é pos­sív­el reuti­lizar essas class­es em out­ras tags sem­pre que dese­jar, sem afe­tar o tem­po de car­rega­men­to da pági­na.

CSS3

Ape­sar de lança­da em 2010, CSS3 é a últi­ma ver­são da Fol­ha de Esti­lo em Cas­ca­ta e veio para acres­cen­tar de for­ma mel­ho­ra­da das ver­sões ante­ri­ores.

A mel­hor novi­dade é em relação a flex­i­bil­i­dade na cri­ação de lay­outs, trazen­do assim mais autono­mia para os web­de­sign­ers e tam­bém desen­volve­dores, que de cer­ta for­ma estão lig­a­dos ao visu­al do site.

Com o CSS3 é pos­sív­el elab­o­rar can­tos arredonda­dos, som­bras, efeitos gra­di­entes, ani­mações e efeitos de tran­sição, den­tre out­ras opções.

Alguns exem­p­los:





E no html bas­ta colo­car a tag <div></div> e a ani­mação começará assim que o esti­lo con­teú­do do site for car­rega­do.

Se você ain­da pre­cisa saber mais sobre HTML, recomen­damos que leia nos­so Guia Com­ple­to, que tam­bém inclui uma lista de coman­dos bási­cos HTML.

dos out­ros, cri­ar sites inter­a­tivos e tam­bém jogos com HTML5 e CSS3.