<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Největší nedostatek CSS (kodéra)</title>
	<atom:link href="https://kahi.cz/blog/css/feed" rel="self" type="application/rss+xml" />
	<link>https://kahi.cz/blog/css</link>
	<description>Zápisník někdy o ničem, ale někdy i o tvorbě webových stránek, o použitelnosti, o uživatelských rozhraních, o CSS a tak všelijak.</description>
	<lastBuildDate>Sun, 25 Aug 2019 21:00:51 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.2</generator>
	<item>
		<title>By: Kahi</title>
		<link>https://kahi.cz/blog/css#comment-159330</link>
		<dc:creator>Kahi</dc:creator>
		<pubDate>Wed, 08 Aug 2012 21:31:38 +0000</pubDate>
		<guid isPermaLink="false">http://kahi.cz/blog/?p=1244#comment-159330</guid>
		<description><![CDATA[<p>&lt;!&#8211;texy&#8211;&gt;[11] BEM nemám nastudovaný vůbec. Z toho co jsem četl nebo viděl jsem ani nepochopil, co za problémy běžného kodéra to (jak) řeší.</p>
<p>[12] Díky. Pro ostatní čtenáře vytahuji z Idiomaticu, co mi přišlo k tématu:<br />
&gt; &#8211; Avoid systematic use of abbreviated class names. […]<br />
&gt; &#8211; Pick an understandable and consistent naming pattern that makes sense both within HTML files and CSS files.<br />
&gt; &#8211; Selectors for components should uses class names; avoid the use of generic tags and unique ids.</p>
<p>&gt; &#8211; [Preprocessors] Limit nesting to 1 level deep. Reassess any nesting more than 2 levels deep. This prevents overly specific CSS selectors.<br />
&gt; &#8211; Avoid large numbers of nested rules. Break them up when readability starts to be affected. Preference to avoid nesting that spreads over more than 20 lines. [Tomu ale asi nerozumím.]<br />
&gt; &#8211; Always place @extend statements on the first lines of a declaration block.<br />
&gt; &#8211; Where possible, group @include statements at the top of a declaration block, after any @extend statements.</p>
<p>[13] Příteli, jestli něčemu nerozumíš, rád vysvětlím, uvedu příklad, stačí říct.</p>
<p>&gt; &gt; Spravovatelnosti je dosaženo … správnou tvorbou selektorů a pojmenováváním tříd … snažím se uniknout sémantice pojmenovávání prvků<br />
&gt; Zajimalo by mne kde presne vidis chybu a jak ji resit.<br />
&gt; Myslim, ze semanticke pojmenovavani prvku je vzdy na miste a prinasi prehlednost nejen do CSS ale i do JS.</p>
<p>Řekněme, že je několik způsobů, jak prvky pojmenovávat (nebo nepojmenovávat) a taky jak tvořit selektory. Například je asi jasné, že hloubka selektoru by měla být minimální, protože hluboká závislost na předcích je opakem komponentového přístupu, který se zdá být nevyhnutelným :-).</p>
<p>Sémantické pojmenovávání prvků není na místě, protože vzhled a sémantika nemusí jít ruku v ruce. Ale i sémantika se dá pojímat konkrétněji a abstraktněji a asi bude pro orientaci v kódu lepší pojmenovat prvek `.article-list`, ačkoli to nemusí platit na věky, než `.list-type-4` a kochat se neprůstřelností.</p>
<p>Myslel jsem to možná spíš tak, že zabývání se obsahem (z hlediska kodéra) je docela vyhozený čas, byť může jít o zajímavou meditaci &#8211; snažit se pojmenovat blok plný dummy textů.</p>
<p>&gt; Znamena to, ze pises obecneji nebo naopak?</p>
<p>Nevím, jak to myslíš. Píši myslím dost v duchu SMACSS/Bootstrap.</p>
<p>&gt; Obcas totiz neni jina cesta a zanorit musime hloubeji.</p>
<p>Občas není jiná cesta, ale ve všech ostatních případech může standardizace fungovat. Nejde třeba jen o hloubku zanoření, ale co takhle důsledně používat selektory přímého potomka a selektor nepřímého brát jako výjimku, která musí projít zvážením? Anebo by to způsobilo spíš potíže? (Nevím.)</p>
<p>Díky za komentář.</p>
]]></description>
		<content:encoded><![CDATA[
<p>[11] BEM nemám nastudovaný vůbec. Z toho co jsem četl nebo viděl jsem
ani nepochopil, co za problémy běžného kodéra to (jak) řeší.</p>

<p>[12] Díky. Pro ostatní čtenáře vytahuji z Idiomaticu, co mi přišlo
k tématu:</p>

<blockquote>
	<ul>
		<li>Avoid systematic use of abbreviated class names. […]</li>

		<li>Pick an understandable and consistent naming pattern that makes sense both
		within HTML files and CSS files.</li>

		<li>Selectors for components should uses class names; avoid the use of generic
		tags and unique ids.</li>
	</ul>
</blockquote>

<blockquote>
	<ul>
		<li>[Preprocessors] Limit nesting to 1 level deep. Reassess any nesting more
		than 2 levels deep. This prevents overly specific CSS selectors.</li>

		<li>Avoid large numbers of nested rules. Break them up when readability starts
		to be affected. Preference to avoid nesting that spreads over more than
		20 lines. [Tomu ale asi nerozumím.]</li>

		<li>Always place @extend statements on the first lines of a
		declaration block.</li>

		<li>Where possible, group @include statements at the top of a declaration block,
		after any @extend statements.</li>
	</ul>
</blockquote>

<p>[13] Příteli, jestli něčemu nerozumíš, rád vysvětlím, uvedu
příklad, stačí říct.</p>

<blockquote>
	<blockquote>
		<p>Spravovatelnosti je dosaženo … správnou tvorbou selektorů a
		pojmenováváním tříd … snažím se uniknout sémantice
		pojmenovávání prvků</p>
	</blockquote>

	<p>Zajimalo by mne kde presne vidis chybu a jak ji resit.<br />
	Myslim, ze semanticke pojmenovavani prvku je vzdy na miste a prinasi prehlednost
	nejen do CSS ale i do JS.</p>
</blockquote>

<p>Řekněme, že je několik způsobů, jak prvky pojmenovávat (nebo
nepojmenovávat) a taky jak tvořit selektory. Například je asi jasné, že
hloubka selektoru by měla být minimální, protože hluboká závislost na
předcích je opakem komponentového přístupu, který se zdá být
nevyhnutelným :-).</p>

<p>Sémantické pojmenovávání prvků není na místě, protože vzhled a
sémantika nemusí jít ruku v ruce. Ale i sémantika se dá pojímat
konkrétněji a abstraktněji a asi bude pro orientaci v kódu lepší
pojmenovat prvek <code>.article-list</code>, ačkoli to nemusí platit na věky,
než <code>.list-type-4</code> a kochat se neprůstřelností.</p>

<p>Myslel jsem to možná spíš tak, že zabývání se obsahem (z hlediska
kodéra) je docela vyhozený čas, byť může jít o zajímavou meditaci –
snažit se pojmenovat blok plný dummy textů.</p>

<blockquote>
	<p>Znamena to, ze pises obecneji nebo naopak?</p>
</blockquote>

<p>Nevím, jak to myslíš. Píši myslím dost v duchu SMACSS/Bootstrap.</p>

<blockquote>
	<p>Obcas totiz neni jina cesta a zanorit musime hloubeji.</p>
</blockquote>

<p>Občas není jiná cesta, ale ve všech ostatních případech může
standardizace fungovat. Nejde třeba jen o hloubku zanoření, ale co takhle
důsledně používat selektory přímého potomka a selektor nepřímého brát
jako výjimku, která musí projít zvážením? Anebo by to způsobilo spíš
potíže? (Nevím.)</p>

<p>Díky za komentář.</p>

]]></content:encoded>
	</item>
	<item>
		<title>By: Jonáš K.</title>
		<link>https://kahi.cz/blog/css#comment-159280</link>
		<dc:creator>Jonáš K.</dc:creator>
		<pubDate>Mon, 06 Aug 2012 08:22:08 +0000</pubDate>
		<guid isPermaLink="false">http://kahi.cz/blog/?p=1244#comment-159280</guid>
		<description><![CDATA[<p>&lt;!&#8211;texy&#8211;&gt;Petere, ruku na srdce, tvuj clanek je na tom obdobne.<br />
Zminujes veci, ktere jsou v zahranici omylane porad dokola. Tve myslenky mi prijdou zajimave, snazis se neco naklepnout ale nevysvetlis to do konce, neuvedes priklad.<br />
Nicmene clanek splni svuj ucel v ramci komentaru, kde se neco zajimaveho objevi.</p>
<p>&gt; Pises &quot;správnou tvorbou selektorů a pojmenováváním tříd&quot;<br />
&gt; a &quot;snažím se uniknout sémantice pojmenovávání prvků&quot;<br />
Zajimalo by mne kde presne vidis chybu a jak ji resit.<br />
Myslim, ze semanticke pojmenovavani prvku je vzdy na miste a prinasi prehlednost nejen do CSS ale i do JS.</p>
<p>K prehlednosti a konzistenci dopomohou, alespon castecne, jiz zminovane SMACSS/Idiomatic.</p>
<p>&gt; Od okamžiku, kdy jsem si osvojil schopnost napsat kód tak<br />
&gt; čistě a úsporně, jak to jen jde, se z této idee snažím vymanit<br />
&gt; a projekt od projektu je můj kód robustnější.<br />
Znamena to, ze pises obecneji nebo naopak?<br />
Osobne mi prijde obecnejsi kod lepsi. Rad si poslechnu v cem je pripadne nevyhoda.</p>
<p>Co se tyce zanorovani, tak urcite cim mene, tim lepe. Standardne se vlezeme do 2-3 ale o standardizaci nemuze byt imho rec. Obcas totiz neni jina cesta a zanorit musime hloubeji.</p>
<p>&gt; mohl bys trochu rozvést téma přínosnosti preprocesorů?<br />
Za mne,<br />
- moznost rozdelit jedno CSS na nekolik mensich logickych celku<br />
- rychlejsi psani kodu (odpadaji prefixy apd.)<br />
- prehlednejsi CSS a dedicnost<br />
Nicmene zatim chybi nastroje, ktere by v ramci teamu fungovali 100%. Delali jsme na velkem projektu pro ING, projekt zastitovali lide z google a obcas nam kazdemu kompilator delal psi kusy. Taky prace win vs mac je obcas ubijejici.</p>
]]></description>
		<content:encoded><![CDATA[
<p>Petere, ruku na srdce, tvuj clanek je na tom obdobne.<br />
Zminujes veci, ktere jsou v zahranici omylane porad dokola. Tve myslenky mi
prijdou zajimave, snazis se neco naklepnout ale nevysvetlis to do konce,
neuvedes priklad.<br />
Nicmene clanek splni svuj ucel v ramci komentaru, kde se neco zajimaveho
objevi.</p>

<blockquote>
	<p>Pises „správnou tvorbou selektorů a pojmenováváním tříd“<br />
	a „snažím se uniknout sémantice pojmenovávání prvků“</p>
</blockquote>

<p>Zajimalo by mne kde presne vidis chybu a jak ji resit.<br />
Myslim, ze semanticke pojmenovavani prvku je vzdy na miste a prinasi prehlednost
nejen do CSS ale i do JS.</p>

<p>K prehlednosti a konzistenci dopomohou, alespon castecne, jiz zminovane
SMACSS/Idiomatic.</p>

<blockquote>
	<p>Od okamžiku, kdy jsem si osvojil schopnost napsat kód tak<br />
	čistě a úsporně, jak to jen jde, se z této idee snažím vymanit<br />
	a projekt od projektu je můj kód robustnější.</p>
</blockquote>

<p>Znamena to, ze pises obecneji nebo naopak?<br />
Osobne mi prijde obecnejsi kod lepsi. Rad si poslechnu v cem je pripadne
nevyhoda.</p>

<p>Co se tyce zanorovani, tak urcite cim mene, tim lepe. Standardne se vlezeme
do 2–3 ale o standardizaci nemuze byt imho rec. Obcas totiz neni jina cesta a
zanorit musime hloubeji.</p>

<blockquote>
	<p>mohl bys trochu rozvést téma přínosnosti preprocesorů?</p>
</blockquote>

<p>Za mne,</p>

<ul>
	<li>moznost rozdelit jedno CSS na nekolik mensich logickych celku</li>

	<li>rychlejsi psani kodu (odpadaji prefixy apd.)</li>

	<li>prehlednejsi CSS a dedicnost</li>
</ul>

<p>Nicmene zatim chybi nastroje, ktere by v ramci teamu fungovali 100%. Delali
jsme na velkem projektu pro ING, projekt zastitovali lide z google a obcas nam
kazdemu kompilator delal psi kusy. Taky prace win vs mac je obcas ubijejici.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Martin Michálek</title>
		<link>https://kahi.cz/blog/css#comment-159276</link>
		<dc:creator>Martin Michálek</dc:creator>
		<pubDate>Mon, 06 Aug 2012 07:07:09 +0000</pubDate>
		<guid isPermaLink="false">http://kahi.cz/blog/?p=1244#comment-159276</guid>
		<description><![CDATA[<p>&lt;!&#8211;texy&#8211;&gt;[7]<br />
K Idiomatic &#8212; ono je to dost čerstvé na zásadnější soudy, ale z jedné části se překrývá s mým pokus/omyl knowhow a z části doplňuje díru, která vznikne tím, že začneš používat SMACSS a… prostě ti ještě něco chybí. Mrkni třeba na sekci Preprocessors, tam má odpovědi i na to co píšeš: <a href="https://github.com/necolas/idiomatic-css/#preprocessors-additional-format-considerations" rel="nofollow">https://github.com/necolas/idiomatic-css/#preprocessors-additional-format-considerations</a></p>
<p>Ta kombinace SMACC/Idiomatic/LESS mi připadá hrozně elegantní. Pro názornost jsem vyhrabal jeden menší modul z chystaného nového webu kina Světozor kde to víceméně (zatím kromě stylu komentářů) držíme —</p>
<p>/&#8212;code css</p>
<p>// &#8212; Modul seznam dlazdic &#8212;<br />
// (blok se seznamem v zalozkach na uvodni strance, v seznamu cyklu nebo fotogalerii)</p>
<p>.tiles {<br />
	position: relative;<br />
	background: @tilesBgColorFallback;<br />
	background: @tilesBgColor;<br />
	padding: 26px 0 22px 24px;</p>
<p>	// Varianta: Na uvodni zalozce posunujeme nize kvuli navigaci pro novinky a udalosti<br />
	&amp;.tiles_splash {<br />
		padding-top: 60px;<br />
	}</p>
<p>	&gt; h2 {<br />
		font-size: 33px;<br />
		line-height: 2*@baseLineHeight;<br />
	}<br />
}</p>
<p>\&#8212;</p>
<p>LESS v tomhle případě kromě úspornosti podporuje i čitelnost.</p>
]]></description>
		<content:encoded><![CDATA[
<p>[7]<br />
K Idiomatic – ono je to dost čerstvé na zásadnější soudy, ale
z jedné části se překrývá s mým pokus/omyl knowhow a z části
doplňuje díru, která vznikne tím, že začneš používat SMACSS a…
prostě ti ještě něco chybí. Mrkni třeba na sekci Preprocessors, tam má
odpovědi i na to co píšeš: <a href="https://github.com/necolas/idiomatic-css/#preprocessors-additional-format-considerations"
rel="nofollow">https://github­.com/necolas/i­diomatic-css/#preprocessors-additional-format-considerations</a></p>

<p>Ta kombinace SMACC/Idiomatic/LESS mi připadá hrozně elegantní. Pro
názornost jsem vyhrabal jeden menší modul z chystaného nového webu kina
Světozor kde to víceméně (zatím kromě stylu komentářů)
držíme —</p>

<pre class="css"><code>// --- Modul seznam dlazdic ---
// (blok se seznamem v zalozkach na uvodni strance, v seznamu cyklu nebo fotogalerii)

<span class="css-class">.tiles</span> {
        <span class="css-property">position</span>:<span class="css-value"> relative</span>;
        <span class="css-property">background</span>:<span class="css-value"> @tilesBgColorFallback</span>;
        <span class="css-property">background</span>:<span class="css-value"> @tilesBgColor</span>;
        <span class="css-property">padding</span>:<span class="css-value"> 26px 0 22px 24px</span>;

        <span class="css-property">// Varianta</span>:<span class="css-value"> Na uvodni zalozce posunujeme nize kvuli navigaci pro novinky a udalosti
        &amp;.tiles_splash {
                padding-top: 60px</span>;
        }

        &gt; h2 {
                <span class="css-property">font-size</span>:<span class="css-value"> 33px</span>;
                <span class="css-property">line-height</span>:<span class="css-value"> 2*@baseLineHeight</span>;
        }
}</code></pre>

<p>LESS v tomhle případě kromě úspornosti podporuje i čitelnost.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Patrik Illy</title>
		<link>https://kahi.cz/blog/css#comment-159275</link>
		<dc:creator>Patrik Illy</dc:creator>
		<pubDate>Mon, 06 Aug 2012 06:12:20 +0000</pubDate>
		<guid isPermaLink="false">http://kahi.cz/blog/?p=1244#comment-159275</guid>
		<description><![CDATA[<p>&lt;!&#8211;texy&#8211;&gt;SMACSS se mi líbí a naznačuje, podle mě, správný myšlenkový směr. Zajimalo by mě, jak moc máte (komentátoři) nastudované BEM a OOCSS a jak moc se tyto přístupy lisí filozofii?</p>
]]></description>
		<content:encoded><![CDATA[
<p>SMACSS se mi líbí a naznačuje, podle mě, správný myšlenkový směr.
Zajimalo by mě, jak moc máte (komentátoři) nastudované BEM a OOCSS a jak
moc se tyto přístupy lisí filozofii?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: srigi</title>
		<link>https://kahi.cz/blog/css#comment-159273</link>
		<dc:creator>srigi</dc:creator>
		<pubDate>Mon, 06 Aug 2012 06:04:19 +0000</pubDate>
		<guid isPermaLink="false">http://kahi.cz/blog/?p=1244#comment-159273</guid>
		<description><![CDATA[<p>&lt;!&#8211;texy&#8211;&gt;Koderinou sa zaoberam uz velmi dlho a narozdiel od vacsiny PHPckarov ma CSSko velmi bavi. Celu oblast preto podrobne sledujem. A musim suhlasit, ze tu chyba nejaky uceleny subor best-practises v dostupnej forme.</p>
<p>Su tu sice SMACSS alebo OOPCSS, mne ale pripadaju ako nejaka referencna prirucka. Nasadenie do realneho velkeho projektu, spolupraca timu, moc pokryta nie je.</p>
<p>Velkou zmenou bol prichod Twitter Bootstrap. Mne to dost otvorilo oci, ako pomocou semantiky na strane HTML definovat vzhlad. Stale vsak nie je pokryta modularnost (widgety, komponenty). A prave tu sa nedavno objavil perfektny blogpost od Yandexu, ktory predstavil techniku BEM (nekce sa mi to hladat, pisem v MHD, pogooglujte).</p>
<p>BEM odporucam nastudovat kazdemu, kto pouziva znovupouzitelne widgety. Treba si z toho zobrat zaklad (konvencie na pomenovanie) a pomaly a dokladne to implementovat.</p>
<p>Ja som prave dokoncil vacsi projekt s pouzitim BEM konvencii a musim si to pochvalit. Bohuzial to nebol projekt &quot;from scratch&quot;, inak by som si presadil aj pouzitie TW Bootstrap. Ale uz sa neviem dockat projektu, kde vyuzijem vsetko co je teraz dostupne: bootstrap, Sass a BEM.</p>
]]></description>
		<content:encoded><![CDATA[
<p>Koderinou sa zaoberam uz velmi dlho a narozdiel od vacsiny PHPckarov ma CSSko
velmi bavi. Celu oblast preto podrobne sledujem. A musim suhlasit, ze tu chyba
nejaky uceleny subor best-practises v dostupnej forme.</p>

<p>Su tu sice SMACSS alebo OOPCSS, mne ale pripadaju ako nejaka referencna
prirucka. Nasadenie do realneho velkeho projektu, spolupraca timu, moc pokryta
nie je.</p>

<p>Velkou zmenou bol prichod Twitter Bootstrap. Mne to dost otvorilo oci, ako
pomocou semantiky na strane HTML definovat vzhlad. Stale vsak nie je pokryta
modularnost (widgety, komponenty). A prave tu sa nedavno objavil perfektny
blogpost od Yandexu, ktory predstavil techniku BEM (nekce sa mi to hladat, pisem
v MHD, pogooglujte).</p>

<p>BEM odporucam nastudovat kazdemu, kto pouziva znovupouzitelne widgety. Treba
si z toho zobrat zaklad (konvencie na pomenovanie) a pomaly a dokladne to
implementovat.</p>

<p>Ja som prave dokoncil vacsi projekt s pouzitim BEM konvencii a musim si to
pochvalit. Bohuzial to nebol projekt „from scratch“, inak by som si presadil
aj pouzitie TW Bootstrap. Ale uz sa neviem dockat projektu, kde vyuzijem vsetko
co je teraz dostupne: bootstrap, Sass a BEM.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
