25 komentářů k článku CSS zbytečnosti:

  1. pavel

    Středník není nutné psát za poslední deklarací pro daný selektor.

    Pokud přidám další deklaraci, tak budu muset doplnit i chybějící středník. Nebo na to zapomenu a chyba je na světě.
    V programování se řídím pravidlem, že pokud je něco nepovinné, tak to tam tuplem dám.

    1. patrik

      Re:
      Přesně.

      Jednotky u hodnoty souhlas, to moc nedává smysl je tam psát, ale středníky, uvozovky, a i ta nula před desetinnou čárkou… To je spíš hloupost, a lenost.

      1. Oldis

        Re:
        No ty jednotky, dneska tam napisu 0, ok, zejtra tam budu chtit napsat o neco vice, nj ale ceho? brambor? hrusek?budu muset hledat.

        1. anti.cz

          Re:
          Souhlas. Ono uz jenom kvuli tomu, ze ve Chrome mi pak staci dvouklik na hodnotu a pak sipkou pridavat pixeli, em.., ale je to zvyk, ja v podstate styluji jen v conzoli a pak to prekopirovavam. U nikoho jineho jsem to jeste nevidel, ale nemusim refreshovat.

      2. mboy

        Re:
        no a potom pride situacia ako transition-duration: 0s; a clovek tam zo zvyku neda jednotku a ono mu to nebude fungovat v chrome lebo tam je ta jednotka skrakta vyzadovana

    2. Marek Sirkovský

      Re:
      „Při používání strukturovaného CSS to ale dost zavání zapomenutím středníku při připsání dalšího předpisu.“
      Uvedeno o řádek níž:) Pokud byl článek editován – tak dopředu sorry:)

  2. Velda

    Ach ta čeština
    1) Může mi autor vysvětlit, co je to slovo posice a co je to posicování? ****

    2) rozdíl mezi „.menu a“ a „div.menu ul li a“
    **** Konkrétnost selektoru má s jeho rychlostí jen pramálo společného. Taky pokud vím, tak se selektory vyhodnocují zprava doleva, takže rozdíl mezi rychlostmi těchto selektorů bude 0,0nic. Asi by byl rychlejší v případě elementu, který tomu pravidlu vyhoví, ovšem on se bude provádět i pro všechny ostatní odkazy na stránce a tam ta rychlost bude bez signifikantního rozdílu. Takže oba selektory jsou prakticky stejně blbé.
    A asi by bylo vhodné např. napsat „.menu > ul > li > a“, ****.

    (Komentář byl upraven redakcí.)

    1. Dvorapa

      Re: Ach ta čeština
      Autor pravděpodobně neudělal chyby bezděčně, hádám, že je to autorův styl, kterým se snaží trochu oživit/odlišit svoje články. Překážka pro čtení to příliš není, po pár řádcích si oko čtenáře zvykne. Nechápu ještě, proč se Vám nelíbí druhý krátký zápis CSS? Co je na něm špatně? Autor dal pouze ukázkový příklad, aby si čtenář uvědomil, že to většinou bývá zbytečné vypisovat vše. A jak je mi známo, mnoho začátečníků v CSS tuhle chybu bohužel hojně dělá. Jestli nejsou oba příklady úplně podle Vaší oblíbené CSS taktiky, pak myslím, že je zřejmé, že to není předmětem tohoto článku.

      1. Velda

        Re: Ach ta čeština
        Jde o tento kousek textu „Jednodušší selektor je rychlejší na vyhodnocení. To je spíš teoretická výhoda – i komplikovaný selektor bude pořád hodně rychlý.“, který není pravdivý. Nelíbí se mi pro to, že v uvedeném příkladě jsou oba selektory v praxi stejně pomalé, mnou uvedený selektor je podstatně rychlejší („.odkazVMenu“ by byl pochopitelně ještě rychlejší, asi i nejrychlejší možnost).

    2. Jirka

      Re: Ach ta čeština
      Zajímavě agresivní komentář.

      1) „S“ se v těchto případech klidně používat může – jde sice o starou, ale stále platnou variantu.

      2) Preference kratších specifikací umožňuje v praxi jednodušší následné přebití hodnoty pro specifické subpřípady.

      1. Velda

        Re: Ach ta čeština
        1) To ano, ale u odborného textu. :-)

        2) Nepřu se s bodem 1) a 2), nýbrž s bodem 3), který je pokud to řekneme natvrdo, lživý.

    3. Martin Hassman

      Re: Ach ta čeština

      Komentář jsem upravil. Veldovi doporučuji, pokud by chtěl i v budoucnu psát komentáře na Zdroják, aby se naučil pravidla slušného chování a vystupování v diskusích; i když z něčím nesouhlasí, nebo to považuje za chybu, je přesto možné respektovat autora jako člověka a sdělovat svůj vlastní názor laskavým způsobem.

      1. Velda

        Re: Ach ta čeština
        *****

        2) Pokud autor sděluje názor, mělo by to tak být uvedeno a né uvedeno tím způsobem, jako by to byl fakt.
        „Jednodušší selektor je rychlejší na vyhodnocení. To je spíš teoretická výhoda – i komplikovaný selektor bude pořád hodně rychlý.“
        Kde vidíte v tomto úryvku známku toho, že se jedná o autorův názor? Napsal to jako fakt, přičemž je to ale naprostá blbost. Tohle není blog… Tedy, aspoň jsem myslel, že je to seriózní web a na seriózní web takové nepravdivé a navíc ještě zavádějící tvrzení nepatří. Z tohoto článku určitě v budoucnu budou čerpat nějací lidé, ale už nebudou vedět, že je fakticky nepřesný (v tomto tvrzení).

        “ i když z něčím nesouhlasí, nebo to považuje za chybu“ a možná tady je identifikován problém spíš ve Vašem názoru. Tady nejde o to, že s tím nesouhlasím, nebo že to považuji za chybu, ale že to CHYBA JE (což samozřejmě u rozumného člověka předchozí 2 věci implikuje).

        *****

        http://www.strejda-google.cz/#css+selector+right+to+left

        (Komentář byl upraven redakcí.)

        1. Martin Hassman

          Odstranil jsem v komentáři provokace a ponechal to důležité.

          Navážu na své původní vysvětlení a pokusím se být nyní jasnější. (Mimo jiné i protože toto není blog,) tu podporujeme diskuse o obsahu a tématu článku a naopak nepodporujeme diskuse napadající autora či komentující. To první je užitečné, druhé zbytečné někdy i škodlivé. (Krásné na tom je, že obě diskutování podmínky lze splnit současně, jinak by to nedávalo smysl.)

          Zkuste prosím příště neplýtvat hned od začátku energií na napadání a místo toho ji směřujte do komentování/upřesňování/opravování obsahu, osvícení čtenáři vám budou vděčni. Oddělte hrubé od jemného.

          I váš kritický názor lze vyjádřit vhodným (například laskavým) způsobem. Nic na tom nemění, zda pravdu zrovna máte či nemáte. O pravdivosti a validnosti vašeho názoru k obsahu jsem se nevyjadřoval (a nekomentuji to ani nyní), vyjádřil jsem se pouze k formě sdělení, zbytečně proto mé „neexistující vyjádření k pravdivosti“ kritizujete. Dokonce ani k „názoru autora“ jsem se nevyjadřoval, ač toto mé nevyjádření zbytečně kritizujete. Je to nejen zbytečné, ale jedná se zde o archumentační omyl nebo dokonce faul – obojího bychom se měli všichni snažit vyvarovat.

          Zkuste si to prosím vzít k srdci. (To píšu vážně, bez sarkasmu, ironie či výsměchu.)

    4. Mino

      Re: Ach ta čeština
      1) Taky, kdyz jsem jeste na unversite studoval fysiku, tak jsem to dokonce mel v nazvu jedne ucebnice („..bla bla neco VE FYSICE bla bla..“). Nejsem cech, divil jsem se, starsi pan profesor mi vysvetlil, ze je to stara forma, ze to tak predtim bylo furt, a ze lidi to porad takhle muzou psat. Spomnel jsem si na to u cteni tohoto clanku :)

      2) Mozna vidis sam, ze je zbytecne pouzivat „html body .trida“, ze staci jenom „.trida“. To co pise autor vyse neni nic jineho. Ve skratce je lepsi byt vice specifiky jenom v pripadech, kdyz ti vice specificky selector je k necemu uzitecny.

    5. Cestinar

      Re: Ach ta čeština
      Někteří lidé ve své prose používají these a frase dle konservativního usu, často to bývá jejich posa :-)

    6. Bohumil JahodaAutor příspěvku

      Re: Ach ta čeština
      Ad 1)

      Může mi autor vysvětlit, co je to slovo posice a co je to posicování?

      posice [-zi-], pozice, -e ž. (2. mn. -ic, -icí) (z lat.) postavení

      1. držení těla; poloha
      2. místo, umístění ve vztahu k okolí
      3. (čast. mn.) (v něj. zápolení) místo, umístění upravené, zaměřené na ovládnutí n. obranu
      4. místo, umístění v něj. celku se zřetelem na význam, vliv

      Ad 2) Komentující se domnívá, že selektor div.menu ul li a bude rychlejší než .menu a, nebo jaká je pointa jeho příspěvku?

  3. Tomáš Kapler

    Mně se to nelíbí
    Tohle všechno jsou takové knížecí rady, které jsou sice správné, možná ušetří i pár bytů, ale spíš se jedná o bad practice a učí to programátory/kodéry špatným zvykům, které je v důsledku budou stát víc času. Navíc to jsou všechno rady, které kodér nemusí řešit, když pak použije nějaký css minifier, který to udělá za něj.
    Příklad takových blbostí – středník na konci. Jasně, být tam nemusí, ale když pak chcete napsat další řádek, musíte koukat, jestli tam je či není středník.
    Podobně nula bez px, či obecně jakékoliv jiné úpravy, které vznáší nejednotnost do zápisu stejných typů hodnot.

    1. Bohumil JahodaAutor příspěvku

      Re: Mně se to nelíbí
      Smyslem článku bylo shrnout CSS zbytečnosti, ne sepisovat best practice.

      Navíc to jsou všechno rady, které kodér nemusí řešit, když pak použije nějaký css minifier, který to udělá za něj.

      Který css minifier dělá následující?

      1. Nahrazuje margin: 0 auto za margin: auto.
      2. Ruší vozovky kolem názvu písem?
      3. Odstraňuje zbytečné prefixy.
      4. Upravuje kód, aby dědil barvu.
      5. Snižuje váhu CSS selektorů.
      6. Maže display: block absolutně posicovaným a obtékaným elementům?
  4. Jirka Kosek

    Jednodušší selektor je rychlejší na vyhodnocení

    Jednodušší selektor je rychlejší na vyhodnocení. To je spíš teoretická výhoda – i komplikovaný selektor bude pořád hodně rychlý.

    To je hodně odvážné tvrzení.

    Když už jde o rychlost, tak by stálo za to doporučit selektor dětí, místo selektoru potomků (tj. „a > b“ místo „a b“).

  5. Jaroslav Bereza

    Barvy
    Ještě mě napadlo, že barvy lze občas zapisovat také pomocí tří znaků

    #fff místo #ffffff
    #f00 místo #ff0000
    

    Je to rychlejší, přehlednější a spíše se v tom neudělá chyba :-)

Napsat komentář

Tato diskuse je již příliš stará, pravděpodobně již vám nikdo neodpoví. Pokud se chcete na něco zeptat, použijte diskusní server Devel.cz

Zdroj: https://www.zdrojak.cz/?p=15422