<?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>Facilitant la web &#187; html</title>
	<atom:link href="http://blog.facilitant.net/tag/html/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.facilitant.net</link>
	<description>Recursos, consells i reflexions sobre el món de la web</description>
	<lastBuildDate>Tue, 02 Mar 2010 11:10:57 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Separar la forma del contingut (nom de les classes)</title>
		<link>http://blog.facilitant.net/2009/06/29/separar-la-forma-del-contingut-nom-de-les-classes/</link>
		<comments>http://blog.facilitant.net/2009/06/29/separar-la-forma-del-contingut-nom-de-les-classes/#comments</comments>
		<pubDate>Mon, 29 Jun 2009 09:01:03 +0000</pubDate>
		<dc:creator>Ramon Vilar Gavaldà</dc:creator>
				<category><![CDATA[Bones pràctiques]]></category>
		<category><![CDATA[Desenvolupament]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[html]]></category>

		<guid isPermaLink="false">http://blog.facilitant.net/?p=136</guid>
		<description><![CDATA[Es ben sabut per tots els que ens dediquem a la programació d&#8217;interfícies web (també anomenats maquetadors o programadors front end) que cal tenir ben present que sempre s&#8217;ha de separar el document (HTML) de la seva presentació en un medi concret (CSS) i dels components amb comportament que pugui tenir (JavaScript). Així, és fàcil [...]]]></description>
			<content:encoded><![CDATA[<p>Es ben sabut per tots els que ens dediquem a la programació d&#8217;interfícies web (també anomenats maquetadors o programadors <span lang="en" xml:lang="en">front end</span>) que cal tenir ben present que sempre s&#8217;ha de separar el document (<acronym title="Hypertext Markup Language" xml:lang="en">HTML</acronym>) de la seva presentació en un medi concret (<acronym title="Cascading Style Sheets" xml:lang="en">CSS</acronym>) i dels components amb comportament que pugui tenir (JavaScript). Així, és fàcil veure que el següent fragment d&#8217;un document és completament incorrecte pel que fa a aquests cànons:</p>
<pre><code class="html">
&lt;div style="margin: 5px;"&gt;
    &lt;em&gt;Aquest contingut el vull en lletra cursiva&lt;/em&gt;
    &lt;small&gt;&lt;a onclick="window.location='/lipsum'" href="http://www.example.com"&gt;Lorem ipsum dolor&lt;/a&gt;&lt;/small&gt;
&lt;/div&gt;
</code></pre>
<p>Normalment la majoria de programadors som ben conscients de la incorrecció del fragment anterior, però sovint ens trobem incorreccions d&#8217;aquest tipus completament encobertes, i sempre seguint el mateix patró: el mal ús dels noms de classe dels elements.</p>
<p>Usaré exemples de la xarxa per a il·lustrar el que vull dir. Si anem a la portada de la pàgina d&#8217;una institució molt important del país podem trobar coses així (canvio els texts per centrar l&#8217;atenció):</p>
<pre><code class="html">
&lt;ul id="ul_home"&gt;
	&lt;li&gt;&lt;a class="vermell_nobullet_2" href="http://www.example.com"&gt;Ipse quat erimo&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a class="vermell_nobullet_2" href="http://www.example.com/dog"&gt;Sailer due rit&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</code></pre>
<pre><code class="html">
&lt;div class="marge_superior"&gt;
    &lt;h2&gt;&lt;span id="actualitat" class="titol_seccio"&gt;Lorem ipsum&lt;/span&gt;&lt;/h2&gt;
&lt;/div&gt;
&lt;div id="altres_serveis" class="border_top"&gt;
    &lt;div class="border_bottom"&gt;
        &lt;a class="text_gris" href="http://www.example.com/bird"&gt;Dolor et sumum&lt;/a&gt;
    &lt;/div&gt;
&lt;/div&gt;
</code></pre>
<p>El valor de l&#8217;atribut <code class="html">@class</code> d&#8217;alguns dels elements ja ens dóna informació de com s&#8217;estilitzaran al veure-ho associat al seu full d&#8217;estils.</p>
<p>Però sovint no es veu tan fàcilment la incorrecció a l&#8217;assignació dels noms de les classes. Per exemple, és ben normal trobar-nos sempre al fragment de descripció de  l&#8217;organització d&#8217;un document, classes del tipus:</p>
<pre><code class="html">
&lt;body class="3-columnes"&gt;
    &lt;div class="columna-esquerra"&gt;
        Lorem ipsum
    &lt;/div&gt;
    &lt;div class="columna-central"&gt;
        Dolor set
    &lt;/div&gt;
    &lt;div class="columna-dreta"&gt;
        Icse et luopir
    &lt;/div&gt;
&lt;/body&gt;
</code></pre>
<p>Hi veieu res d&#8217;estrany? Per saber si les classes són reveladores de la forma final, només cal que us feu la següent pregunta: podríeu saber quina és la forma final de la pàgina només llegint l&#8217;<acronym title="Hypertext Markup Language" xml:lang="en">HTML</acronym>? Si la resposta és sí, les classes són errònies. Si és no, doncs la cosa ja està millor.</p>
<p>Per exemple, una forma correcte de fer la divisió del document podria ser:</p>
<pre><code class="html">
&lt;body class="layout-complet"&gt;
    &lt;div class="contingut-primari"&gt;
        Lorem ipsum
    &lt;/div&gt;
    &lt;div class="contingut-secundari"&gt;
        Dolor set
    &lt;/div&gt;
    &lt;div class="contingut-terciari"&gt;
        Icse et luopir
    &lt;/div&gt;
&lt;/body&gt;
</code></pre>
<p>Oi que ara ja no us espereu com serà el document final?</p>
<p>Per tant, cal anar amb compte a l&#8217;hora d&#8217;assignar els noms a les classes. Sempre cal tenir ben present de separar la forma o presentació del contingut i anar una mica amb peus de plom a l&#8217;hora de cercar els valors. Així aconseguirem que els nostres documents siguin 100% independents de la forma en que es visualitzen.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.facilitant.net/2009/06/29/separar-la-forma-del-contingut-nom-de-les-classes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Arguments a favor i en contra de l&#8217;ús d&#8217;iframes</title>
		<link>http://blog.facilitant.net/2009/03/31/arguments-a-favor-i-en-contra-de-lus-diframes/</link>
		<comments>http://blog.facilitant.net/2009/03/31/arguments-a-favor-i-en-contra-de-lus-diframes/#comments</comments>
		<pubDate>Tue, 31 Mar 2009 16:27:33 +0000</pubDate>
		<dc:creator>Ramon Vilar Gavaldà</dc:creator>
				<category><![CDATA[Bones pràctiques]]></category>
		<category><![CDATA[Reflexions]]></category>
		<category><![CDATA[accessibilitat]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[iframe]]></category>

		<guid isPermaLink="false">http://blog.facilitant.net/?p=113</guid>
		<description><![CDATA[Per temes de feina avui he hagut de fer un llistat d&#8217;arguments a favor i en contra de l&#8217;ús d&#8217;iframe en un desenvolupament web i m&#8217;he decidit a fer-la pública perquè tothom que vulgui pugui opinar-ne.
A favor

Integració d&#8217;aplicacions. Permet integrar aplicacions externes a dins de la nostra pàgina.
Disminució de peticions a servidor. Si tenim una [...]]]></description>
			<content:encoded><![CDATA[<p>Per temes de feina avui he hagut de fer un llistat d&#8217;arguments a favor i en contra de l&#8217;ús d&#8217;<code class="html">iframe</code> en un desenvolupament web i m&#8217;he decidit a fer-la pública perquè tothom que vulgui pugui opinar-ne.</p>
<h3>A favor</h3>
<ul>
<li><strong>Integració d&#8217;aplicacions.</strong> Permet integrar aplicacions externes a dins de la nostra pàgina.</li>
<li><strong>Disminució de peticions a servidor</strong>. Si tenim una part de la nostra pàgina que és costosa de construir (dins d&#8217;un entorn de pagines dinàmiques), podem posar-la dins d&#8217;un <code class="html">/iframe</code> fent que no s&#8217;hagi de refrescar cada cop que canviem de pàgina (seguint una mica el model del ja deprecat element <code class="html">/frame</code>).</li>
</ul>
<h3>En contra</h3>
<ul>
<li><strong>Forat negre.</strong> Al poder-hi posar tot el que vulguem, un <code class="html">/iframe</code> pot arribar a ser un problema de seguretat si no som nosaltres els creadors del seu contingut.</li>
<li><strong>Accessibilitat.</strong> Existeixen navegadors que no suporten l&#8217;ús de l&#8217;element <code class="html">iframe</code>.</li>
<li><strong>Lectors de pantalla. </strong>Hi ha navegadors que per defecte donen el focus al <code class="html">iframe</code> en el moment de carregar la pàgina. Això és un problema per a la correcta lectura del document pels lectors de pantalla.</li>
<li><strong>Cercadors. </strong>Les aranyes dels cercadors no saben navegar correctament per les pàgines que usen marcs. Per tant, pot ser que el nostre lloc no sigui correctament indexat.</li>
<li><strong>Estructura del contingut.</strong> L&#8217;ús de l&#8217;element <code class="html">iframe</code> trenca l&#8217;estructura lògica del contingut de la pàgina.</li>
<li><strong>Gran confusió al interactuar amb el navegador.</strong> Diverses interaccions de l&#8217;usuari amb el navegador es veuen greument modificades per l&#8217;ús de l&#8217;element <code class="html">iframe</code> en una pàgina:
<ul>
<li><strong>URL.</strong> La URL que es veu al navegador no és sovint la que correspon a la d&#8217;una pàgina creada amb marcs: si anem navegant dins del marc, la URL del navegador no canvia, però en canvi, la de la pàgina que estem veient sí que &#8220;ha canviat&#8221;.</li>
<li><strong>Adreces d&#8217;interès.</strong> Lligat amb el punt anterior, si volem desar l&#8217;adreça de la plana, la que desarem serà la que es veu al navegador. Al tornar-hi veurem  que no és pas la mateixa plana que havíem desat (haurem perdut la navegació dins del marc). Tot i que hi ha navegadors que ens donen la possibilitat d&#8217;esbrinar l&#8217;adreça d&#8217;un marc, pot ser que l&#8217;usuari sigui no especialitzat i per tant, no sàpiga de l&#8217;existència d&#8217;aquesta possibilitat. Igualment, un usuari de la plana no ha de saber com està feta la pàgina, i per tant, saber com ha de fer-s&#8217;ho per desar l&#8217;enllaç  &#8220;correcte&#8221; a la plana en qüestió.</li>
<li><strong>Resultats d&#8217;una cerca.</strong> Si accedim a una pàgina feta amb marcs des d&#8217;un resultat d&#8217;un cercador extern, pot dur-nos a una adreça  &#8220;incorrecte&#8221;: podem anara a l&#8217;adreça d&#8217;un marc, on veurem el contingut d&#8217;aquest però sense el contingut del seu &#8220;pare&#8221;.</li>
</ul>
</li>
<li><strong>Alçada fixa.</strong> Un <code class="html">iframe</code> té alçada fixa, i per tant, pot ser que ens aparegui una barra de desplaçament lateral en cas que el contingut ocupi més espai del reservat per l&#8217;atribut <code class="html">@height</code> del marc.</li>
</ul>
<h3>Alternatives</h3>
<p>En cas que usem marcs només per temes estètics no tenim excusa per abandonar-los, ja que el seu aspecte es pot replicar 100% amb <acronym title="Cascading Style Sheets" xml:lang="en">CSS</acronym>.</p>
<p>Si usem marcs per tal de poder deixar una part de la nostra pàgina fixa mentre fem <span lang="en" xml:lang="en">scroll</span> de la pàgina, podem usar la propietat <code class="css">position: fixed</code> de <acronym title="Cascading Style Sheets" xml:lang="en">CSS</acronym> tal i com s&#8217;explica en aquest <a hreflang="en" href="http://www.w3.org/Style/Examples/007/menus.html">article</a>.</p>
<p>En canvi, si el que volem és que cert contingut de la pàgina tingui una barra lateral per poder navegar dins seu, podem usar la propietat <code class="css">overflow</code> tal i com s&#8217;explica en aquest altre <a hreflang="en" href="http://www.quirksmode.org/css/overflow.html">article</a>.</p>
<h3>Conclusions</h3>
<p>A data d&#8217;avui, i a no ser que sigui algun motiu de rendiment o d&#8217;integració, l&#8217;ús de marcs no està justificat en un inici, ja que provoca més desavantatges que no pas avantatges. Sovint la necessitat d&#8217;aquest element recau més per un tema gràfic que no pas per un tema funcional, cosa que com ja hem vist, es pot resoldre amb l&#8217;ús de fulls d&#8217;estils.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.facilitant.net/2009/03/31/arguments-a-favor-i-en-contra-de-lus-diframes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
