Domovská » Kódování » HTML5 Tutoriál Jak vytvořit stránku s jedním produktem
HTML5 Tutoriál Jak vytvořit stránku s jedním produktem
Tento článek je součástí našeho "HTML5 / CSS3 Tutorials series" - které jsou určeny k tomu, abyste z vás učinili lepšího návrháře a / nebo vývojáře. Klikněte zde zobrazit více článků ze stejné série.
V tomto příspěvku budeme pracovat na fiktivním projektu, který vytvoří jednu produktovou stránku, která nabídne iPhone 4S, a v tomto projektu budeme také provádět metody, o nichž jsme hovořili v předchozích příspěvcích; a volič negace.
Začněme.
Značky HTML5
Nejprve musíme vytvořit html dokument s následujícím značením:
Apple iPhone 4 - 16 GB
Nejúžasnější iPhone.
Rychlejší dvoujádrový čip A5. Fotoaparát s rozlišením 8 MP s zcela novou optikou také natáčí 1080p HD video. A představení Siri. Je to zatím nejúžasnější iPhone.
Vlastnosti produktu
8 megapixelový fotoaparát s plným 1080p videozáznamem
Siri hlasitě asistoval
iCloud
Letecký tisk
Retina displej
Foto a video geotagging
Používáme několik nových značek z HTML5 spec záhlaví, hgroup, postava, sekce, a jeden, o kterém jsme dříve hovořili; podrobnosti a souhrn štítek.
Nebudeme se však do těchto značek kopat, ne proto, že bychom nebyli ochotni, ale spíše se jedná o základní témata, která můžete snadno najít jinde. Takže, pokud jste opravdu nový HTML5, doporučuji vám přečíst následující odkazy těchto značek; vysvětlili je komplexně:
Promluvme si o sémantice
Element HTML5 záhlaví
Hgroup Element
HTML5 Tag Reference
Nyní se podívejme na první vzhled naší stránky.
No, vypadá to rozumně bez jakýchkoliv stylů. Na samém vrcholu je záhlaví a pak přichází sekce pro obrázek, popis a nakonec tlačítko 'Koupit'. Pojďme si tuto stránku prohlédnout.
Styly
Začneme normalizací všech výchozích stylů pomocí této šablony stylů a přidáme pozadí přechodu html štítek.
Nezapomeňte, že všechny naše produktové prvky jsou zabaleny v rámci div s třídou výrobků. Tady bychom chtěli soustředit obal a nastavit šířku, která má být kolem 650px.
.wrapper width: 650px; okraj: auto; polstrování: 25px 0px;
Sekce záhlaví
V sekci záhlaví máme dva záhlaví h1 a h4, Tak pojďme styl těchto prvků.
Jako obvykle IE (Internet Explorer) vždy způsobuje nějaké potíže; pokud toto otevřete v libovolném IE nižším než 9, stránka zůstane bez stylu.
Důvodem je, že aplikace Internet Explorer nerozpozná nové prvky (sekce, záhlaví, atd.), takže styly, které jsme zadali, se nezdaří aplikovat. V dalším kroku tedy budeme pracovat na řešení tohoto problému.
Testování podpory prohlížeče
V našem předchozím příspěvku jsme se zabývali podporou prohlížeče pro prvek detailu pomocí tohoto polyfill; tak, aby mohl fungovat v nepodporovaných prohlížečích. Tentokrát se však pokusíme o různé způsoby, jak to s Modernizrem dělat.
Z oficiálních stránek, "Modernizr je open-source JavaScript knihovna, která vám pomůže vybudovat další generaci HTML5 a CSS3-webové stránky". Technicky, Modernizr bude testovat podporu prohlížeče pro některé nové prvky a funkce. Není-li podpora poskytnuta, musíme poskytnout nouzovou informaci, zda se jedná o poskytování různých stylů nebo poskytování polyfills. V tomto případě použijeme Modernizr, abychom nám pomohli otestovat detaily a souhrnný prvek.
Přejděte na stránku Modernizr a přejděte na stránku ke stažení.
Na stránce pro stahování poskytuje Modernizr několik možností konfigurace knihovny, takže stačí vybrat určité funkce, které potřebujete pro vaše webové stránky. V tomto případě potřebujeme:
HTML5Shiv 3.4
Přidat třídy CSS, Tato funkce automaticky vloží třídy do tagu html.
Modernizr.load,
přejděte do pole Doplňky komunity a vyberte možnost detaily elem,
V části Rozšiřitelnost vyberte možnost Modernizr.addTest.
Generujte a stáhněte soubor.
Připojte jej k html a znovu načtěte stránku v aplikaci Internet Explorer. Stránka by měla být nyní upravena, protože aplikace Internet Explorer nyní rozpoznává značky.
A pokud si prohlížíte zdroj nebo zkontrolujete prvek, zjistíte, že třída no-details byla vložena do tagu html; označující, že prohlížeč, ve kterém si prohlížíme stránku; v současné době nepodporuje prvek podrobností. @@@@ [Tuto vetu nechápu. ]
Můžeme pak vytvořit nouzové použití této třídy jako hák, který budeme dělat v dalším kroku.
Úpadek
V tomto kroku poskytneme podobné podrobnosti funkce pro ostatní prohlížeče (kromě Chrome). V předchozím příspěvku byl tento krok automaticky proveden pomocí tohoto skriptu, ale tentokrát ho vytvoříme sami.
Poznámka: Prostě si trochu přečtěte z našeho předchozího příspěvku; prvek podrobností je aktuálně podporován pouze v prohlížeči Chrome.
Začněme tedy nejprve pracovat na CSS.
Na souhrnné značce změníme jeho režim kurzoru na ukazatel, takže uživatel si všimne, že je klikací.
summary cursor: ukazatel; velikost písma: 12pt; obrys: 0;
Chcete-li zadat více mezer v horní a dolní části prvku podrobností s okrajem.
podrobnosti margin: 20px 0px;
Ve výchozím nastavení bude mít souhrnná značka šipku. Rádi bychom ji však nahradili ikonou plus-mínus.
Poznámka: Předtím, než jsem pokračoval, stáhnul jsem si z této kolekce ikony Fugue, stáhnul a sprite je do jednoho souboru.
Přidejme pseudo-element a připojíme ikonu jako pozadí. Všimněte si, že v tomto okamžiku je pozice pozadí nahoře, která zobrazí ikonu plus.
podrobnosti> shrnutí: před width: 16px; výška: 16px; displej: inline-block; content: "! important; background: url ('… /https://assets.hongkiat.com/uploads/html5-single-product-page/plus-min.png') středová část bez opakování; 5px; pozice: relativní; horní: 2px;
Když je prvek detailu otevřen, pozice pozadí se přesune na dno, které zobrazí ikonu minus.
podrobnosti [otevřít]> shrnutí: before, details.open> summary: before background: url ('… /https://assets.hongkiat.com/uploads/html5-single-product-page/plus-min.png' ) středové dno bez opakování;
[otevřeno] znak je volič. V tomto případě zvolí v podpůrném prohlížeči atribut open data.
Nakonec bychom měli skrýt šipku, která je standardně zobrazena v prohlížeči Chrome.
Poté se na chvíli podíváme na výsledek v prohlížeči.
Výchozí šipka nyní byla nahrazena naší ikonou a pokud ji vidíte v prohlížeči Chrome, budete mít na ni již přepínací efekt. ikona se odpovídajícím způsobem změní. Ale v jiných prohlížečích se nic nestane. Takže v dalším kroku se pokusíme replikovat efekt pomocí jQuery.
Přepínač efektu jQuery
Než začneme s částí jQuery, rád bych poděkoval Ianovi Devlinovi za inspiraci, níže uvedený skript je vlastně mírnou úpravou jeho.
V pořádku, vytvořme proměnnou pro uložení souhrnné značky.
var summary = $ ('shrnutí podrobností');
Pak zabalíme všechny prvky sourozence souhrnu s div.
summary.siblings (). wrapAll ('„);
A skrýt, že div, když prvek detail nemá otevřenou třídu.
$ ('podrobnosti: not (.open) summary') siblings ('div') skrýt ();
Když kliknete na shrnutí, chceme, aby byl skrytý div zobrazen a naopak, když je div původně otevřen, bylo by skryto.
Nyní to vyzkoušejte v prohlížeči; efekt přepínání by nyní měl fungovat na všech prohlížečích, které jsem osobně zkontroloval (až do aplikace Internet Explorer 7).
Demo
Stáhněte si zdroj
Tipy: Alternativně můžete změnit .přepnout () s .slideToggle () vytvořit efekt posuvného snímku. Také pokud chcete, aby byl detail zpočátku otevřen, můžete v elementu podrobností přidat třídu otevřenou.
Závěr
Byli jsme ve všech krocích vytvoření jediné produktové stránky pomocí HTML5, ladění nepodporovaných prohlížečů a replikace přepínacího efektu pro element detailu na vlastní pěst, takže se z toho můžete hodně naučit.
Jsem si však vědom (a), že jsem v tomto příspěvku podrobně nevysvětlil vše, takže pokud chcete něco zrušit, můžete otázku odeslat do pole pro komentář níže.