abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:00 | Nová verze

    Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    včera 16:33 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 03:22 | Zajímavý článek

    V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …

    Ladislav Hagara | Komentářů: 0
    včera 00:11 | Nová verze

    Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.

    Ladislav Hagara | Komentářů: 6
    27.4. 17:44 | Nová verze

    Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    26.4. 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 12
    26.4. 13:33 | Nová verze

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 9
    26.4. 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 45
    25.4. 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 14
    25.4. 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 3
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (15%)
    Celkem 876 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Ideální míry

    27.3.2005 15:08 | Přečteno: 3767× | ostatní | poslední úprava: 27.3.2005 15:44

    Jaká je optimální šířka webu? Otázka, ketrá je schopná vyvolat stejný flame, jako obligátní LINUX versus Windows, Emacs vs. vim... Je lepší volit pevnou šířku, kde sice máme jistotu kompaktního layoutu, ale při větších rozlišeních je ze stránky úzká nudle, nebo radši zvolit procentuální rozložení, kde se při vyšších rozlišeních zase text kvůli příliš dlouhým řádkám nedá číst?

    Ideálem by přitom byla stránka "přirozeně" měnící svojí šířku dle rozlišení monitoru. Jak na to? Řešení je poměrně jednoduché a vystačí si s CSS1, JavaScriptem (a tím myslím opravdu elementární javascript) a trochou matematiky.

    Idea je následující: Zjistíme aktuální velikost obrazovky a podle této upravíme šířku layoutu tak, aby se stránka zobrazovala co nejlépe, tedy ani ne moc široká, ani ne moc úzká. Intuitivně by se toto dalo řešit pomocí předdefinovaných hodnot pro každé používané rozlišení, z praktických důvodů (lenost ;-) ) to však není řešení ideální. Zajímavější je použít nějakou funkci, která bude šířku layoutu měnit tak, aby se při libovolném rozlišení blížil ideálu. Jak takovou funkci ale najít?

    Při "konstrukci" té své jsem vycházel z toho, že pro rozlišení 800x600 potřebuju 100% plochy, při 1024x768 už ale layout vypadá nejlíp, když zabírá 85% obrazovky. První co mě napadlo bylo sestrojit lineární funkci procházející těmito body ( [800,100], [1024,85] ). Výsledeky pro rozlišení od 800x600 do 1600x1200 (větší nejsem schpnej otestovat) sice je o něco lepší, než při použití procentuální hodnoty, ale není to úplně ono. Hledaná "přirozená" funkce musí vypadat jinak. Vyzkoušel jsem proto pro dané body všechny druhy regrese, co nabízí moje AlgebraFX2 a "nejhezčí" výsledky dává regrese mocninná:

    y = ax^b , a = 8151, b = -0.6583

    Implementace kódu měnícího šířku DIV elementu('boundingbox') pak vypadá následovně:

    rozliseni = screen.width;
    if (rozliseni > 800)
        sirka = Math.floor(8151/(Math.pow(rozliseni, 0.6583)));
    else
        sirka = 100;
    
    element = document.getElementById('boundingbox').style;
    element.width = sirka + '%';
    

    Důležitou fintou aby toto fungovalo, je načtení tohoto kódu ihned po výskytu otvíracího tagu elementu ve stránce. Pokuď by se kód načetl dříve, dojde k chybě, neboť element (a tudíž i jeho vlastnost) ještě není definován. Při umístění na konec stránky by pak došlo k nežádoucímu efektu přeformátování načtené stránky na novou velikost.

    Při testování pozor na to, že žádný prohlížeč při změně rozlišení obrazovky automaticky nemění hodnotu screen.width. V IE je potřeba stránku znova načíst, v případě Mozilly je třeba restartovat dokonce celý prohlížeč. Praktickou použitelnost to ale moc neovlivní, protože, kolik uživatelů mění během brouzdání rozlišení?! Jak to celé vypadá v praxi je k vidění na straz.unas.cz. Na závěr pak ještě dodám, že toto řešení funguje ve všech moderních prohlížečích. (testoval jsem na: IE6, Mozilla, Opera, Konqueror)

    V komentářích rád uvítám Vaše názory na tuto metodu, případně Vaše ideální míry ;-)

           

    Hodnocení: -

    zatím nehodnoceno
            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    27.3.2005 15:20 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše zajímavé
    ale pro mě asi nepoužitelné. Připadá mi to skoro zbytečné. Koukám, že neřešíš to jestli mám browser maximalizovaný nebo je to jen malé okénko. Nebylo by lepší nechat šířku stránky jen a pouze na samotném CSS?
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    27.3.2005 15:34 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: zajímavé
    Nebylo by lepší nechat šířku stránky jen a pouze na samotném CSS?

    IMHO nebylo, protože pak nastává jeden ze dvou problémů popsanejch nahoře - buď je to moc úzký, nebo moc široký a nedá se to číst.

    Koukám, že neřešíš to jestli mám browser maximalizovaný nebo je to jen malé okénko.

    To je pravda, vycházim z předpokladu, že většina uživatelů má prohlížeč maximalizovanej. Po pravdě řečeno ani nevim, jak aktuální velikost plochy okna zjistit... Javascript používám jenom v krajních případech a to jenom tak, aby to fungovalo i bez něj.

    Každý má právo na můj názor!
    27.3.2005 15:50 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: zajímavé
    Něco jako je na tomhle webu ti nepomůže?
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    27.3.2005 16:44 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: zajímavé

    Tak jsem si s tim chvili hrál a použití document.body.offsetWidth (velikost okna) mi nepřijde lepší řešení než screen.width.

    Každý má právo na můj názor!
    27.3.2005 17:32 k3
    Rozbalit Rozbalit vše Re: zajímavé
    hmm tak dalsi nepouzitelny web. Kdyz to na mem desktopu zjisti sirku obrazu a spocita si to "spravnou" sirku tak si to nastavi sirku vetsi nez je srka okna prohlizece. Nejak se nepocita s tim, ze nekdo muze mit dva monitory...
    27.3.2005 17:38 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: zajímavé
    Šířka elementu je udaná v procentech a přes 100% to díky podmínce nemůže jít. Takže leda že by s tim, že máte 2 monitory nepočítal samotnej prohlížeč, což ale opravdu neni problém webu...
    Každý má právo na můj názor!
    27.3.2005 17:41 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: zajímavé
    A navíc je ta funkce klesající...
    Každý má právo na můj názor!
    27.3.2005 17:52 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Ach jo
    No to je zase vynález. Ještěže mám JS trvale vypnutý.

    To je snad moje věc, jak mám velké okno prohlížeče a písmo. A pokud mi chceš vnutit obojí, tak mi pak ještě vnuť správně velký monitor a nastav mi na něm to správné rozlišení -- a nemusíš nic detekovat. A pokud nechceš, tak udělej normální fluidní design.

    Omlouvá tě jedině to, že je to s vypnutým JS docela použitelné.
    27.3.2005 18:23 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: Ach jo

    S vypnutym JS to neni "docela" použitelný ale zcela použitelný. Chová se to, jako kdyby to byl obyčejnej fluidní layout s šířkou 85%

    Nicméně např. při 1600x1200 už je 85% opravdu moc a text se blbě čte. 63% je pak IMHO tak akorát. Nejde o to vnutit někomu to "správný" rozlišení, právě naopak jde o snahu, aby to bylo použitelný při libovolnym rozlišení.

    Každý má právo na můj názor!
    27.3.2005 18:32 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Ach jo
    Jenže když mám 1600x1200 a stejně velké písmo jako při 800x600, tak se čtou špatně úplně všechny weby.

    Proto když ti přilezu na web s neobvyklým rozlišením, musíš předpokládat, že (a) mám takhle velké okno, protože vím, co dělám, mám třeba větší písmo nebo cokoli, a pak se mi do toho nemáš co plést (b) jsem debil, co si neumí zmenšit okno, i když se mu v něm čtou špatně všechny weby, a pak dobře mi tak.

    Ad 85% bez JS. Samozřejmě je to vinou volného prostoru napravo podivně asymetrické, ale už jsem viděl horší layouty ;-)
    Valoun avatar 27.3.2005 18:32 Valoun | skóre: 30 | blog: Psavec | Středočeský kraj
    Rozbalit Rozbalit vše Fuj
    1.) Potrebuje to JS
    2.) Nezkousel jsme to na dvoumonitorove konfiguraci, ale asi to bud delat neplechu.
    3.) Na mem notasu to nechava 1/4 obrazovky permanentne prazdnou. Ani zvetseni pisma nepomuze.
    4.) Co takhle zkusit dat pouze toto:
    width: 90ex;
    max-width: 980px;
    min-width: 700px;
    font-size: medium;
    
    Kazdy si muze zvetsit pismo dle libosti, sirka stranky se tomu prizpusobi, ovsem v rozumnych mezich. A kdyz pridas schovavaci sidebary a la abclinuxu, tak si prijde na sve snad kazdy. ukazka
    27.3.2005 18:49 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: Fuj
    ad 1) Ano, ale bez JS je to zcela funkční
    ad 2) Proč mysíš? (taky jsem nezkoušel - nemám kde)
    ad 3) Nechápu, ten tvůj web mi taky nechává víc jak 1/4 obrazovky prázdnou. Jde jenom o to kde, a mně se to víc líbí asymetricky.
    ad 4) Tohle by samozřejmě taky šlo, ale nebude to mít zcela ideální výsledky ;-)
    Každý má právo na můj názor!
    27.3.2005 19:25 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: Fuj
    ad 4) Hmm, tak nešlo, protože IE max-width nepodporuje...
    Každý má právo na můj názor!
    Valoun avatar 28.3.2005 00:01 Valoun | skóre: 30 | blog: Psavec | Středočeský kraj
    Rozbalit Rozbalit vše Re: Fuj
    Hacky pro IE jsem zde samozrejme neuvadel. Zajimam se pouze o moderni prohlizece. A v IE opravuju jen to co OPRAVDU hori.
    28.3.2005 13:11 Petr Soběslavský | skóre: 2 | blog: Sobův blog
    Rozbalit Rozbalit vše no, nevim, nevím
    při větších rozlišeních je ze stránky úzká nudle

    A co když má uživatel nastavené velké písmo (třeba 40px) - pak se mu i při rozlišení 2000 x nevimkolik px zobrazí na řádek třeba 40 znaků, což je v pořádku.

    Není v tom případě snad lepší max-width:60em;? - IE to sice nepodporuje, ale když má někdo velké rozlišeni, vadí mu dlouhé řádky a přitom pořád používá IE, pak je mu každá pomoc drahá..

    28.3.2005 13:18 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: no, nevim, nevím

    Stejná připomínka jako od Yetiho. Oba dva ale předpokládáte "uvědomělé" uživatele co si prohlížeč pro vysoký rozlišení náležitě "vyladí". Těch je ale IMHO zanedbatelný množství.

    Každý má právo na můj názor!
    28.3.2005 14:04 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: no, nevim, nevím
    Ne, já předpokládám obě varianty. Kdo není uvědomělý, tak si snad alespoň nezvětšuje okno tak, aby se mu všechno blbě četlo?

    Naproti tomu ty předpokládáš jediný typ uživatele -- a to právě toho, který tohle dělá.
    28.3.2005 19:59 Petr Soběslavský | skóre: 2 | blog: Sobův blog
    Rozbalit Rozbalit vše Re: no, nevim, nevím

    Když budu myslet na většinového uživatele, tak tam plácnu width:780px; a minimálně v 90% případů to bude v pořádku. Extrémně velké rozlišení má menšina, takže i všechny snahy o přizpůsobení jsou mířeny k menšině uživatelů, a stejně jako jsou menšinou lidi s velkým rozlišením, jsou menšinou i lidi s vypnutým javascriptem, jsou menšinou i lidi s nastaveným velkým písmem..

    29.3.2005 15:15 kavol
    Rozbalit Rozbalit vše Re: no, nevim, nevím
    Oba dva ale předpokládáte "uvědomělé" uživatele co si prohlížeč pro vysoký rozlišení náležitě "vyladí".
    co je tohle za pitomost, s prominutím?

    co bych měl ladit? mám v práci 17'' monitor, na kterém je maximální použitelné rozlišení 1280*1024, doma taky 17'' ale s 1600*1200 a na notebooku cca 14'' s 1024*768, a když chci písmo "dvanáctku", tak je všude vysoké 12 bodů, bez ohledu na to, kolik to znamená pixelů nebo procent z výšky obrazu ... problém při návrhu webu není rozlišení, ale skutečně dostupná šířka okna, a to se prostě musí (ehm) nechat na uživateli :-(

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.