Transcript
Page 1: Peter Orosz - Šablona od A do Z

Šablóna: od A po ZPeter Orosz

LinkedIn | [email protected]

Page 2: Peter Orosz - Šablona od A do Z

Otázky:

1. Chcem to robiť?

2. Chcem to robiť dobre?

Page 3: Peter Orosz - Šablona od A do Z

„Systém“ práce

• stavba newslettru je hladký proces

• neignorujem chyby, „ku ktorým sa vrátim“

• svoju šablónu spoznám aj o rok, aj o polnoci

Page 4: Peter Orosz - Šablona od A do Z

„Systém“ práce

Page 5: Peter Orosz - Šablona od A do Z

„Systém“ práce

Page 6: Peter Orosz - Šablona od A do Z

Modularita

Page 7: Peter Orosz - Šablona od A do Z

Modularita

Page 8: Peter Orosz - Šablona od A do Z

Hybridný prístup

Fluid Responsive Hybrid

Page 9: Peter Orosz - Šablona od A do Z

Task branching

Page 10: Peter Orosz - Šablona od A do Z

„Systém“ práce

branch branch branch

Page 11: Peter Orosz - Šablona od A do Z

Náš projekt

Page 12: Peter Orosz - Šablona od A do Z

http://webdesign.tutsplus.com/tutorials/creating-a-future-proof-responsive-email-without-media-queries--cms-23919

Creating a Future-Proof Responsive Email Without Media Queries

Nicole Merlin

Page 13: Peter Orosz - Šablona od A do Z

https://github.com/peterorosz/vivmail2016 (01-scaffolding.html)

Scaffolding "Lešenie"

Page 14: Peter Orosz - Šablona od A do Z

Dôležité prvky

<meta name="viewport" content="width=device-width, initial-scale=1.0">

• zúži šírku newslettru pre mobilné zariadenie

Page 15: Peter Orosz - Šablona od A do Z

Dôležité prvky

CSS Resety (<!— RESETS —>…)

• normalizujú správanie sa prvkov v Outlook, Android Mail

Page 16: Peter Orosz - Šablona od A do Z

Dôležité prvky

<center style="width: 100%; table-layout: fixed; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%;">

• centruje prvky šablóny

• stanovuje šírku šablóny pre mobilné zariadenia

• zabraňuje klientom preformátovať text

Page 17: Peter Orosz - Šablona od A do Z

Dôležité prvky

<div style="max-width: 600px; margin: 0 auto;">

• extra centruje prvky šablóny pre niektoré klienty

• stanovuje šírku šablóny na pre desktop

Page 18: Peter Orosz - Šablona od A do Z

Dôležité prvky<!--[if (gte mso 9)|(IE)]> <table width="600" align="center" cellpadding="0" cellspacing="0" border="0"> <tr> <td> <![endif]-->

• stanovuje šírku šablóny na pre Outlook na desktope

• normalizuje správanie sa prvkov v Outlook

Page 19: Peter Orosz - Šablona od A do Z

Dôležité prvky

<table style="margin: 0 auto; width: 100%; max-width: 600px;" align="center" cellpadding="0" cellspacing="0" border="0">

• stanovuje šírku šablóny (pre mobil i desktop)

• normalizuje správanie sa prvkov v Outlook

Page 20: Peter Orosz - Šablona od A do Z

Dôležité prvky

<!— Pre-header ->…

• Zneviditeľní prvú vetu v šablóne, čím vznikne „extra Subject Line“

Page 21: Peter Orosz - Šablona od A do Z

https://github.com/peterorosz/vivmail2016 (02-rows.html)

Rows

Page 22: Peter Orosz - Šablona od A do Z

Modularita

Page 23: Peter Orosz - Šablona od A do Z

Štruktúra

<tr> <td style="text-align: center; font-size: 0;"> <!-- Insert columns here --> </td> </tr>

• font-size „hack“ zabráni vznikaniu medzier medzi obrázkami v niektorých klientoch

Page 24: Peter Orosz - Šablona od A do Z

text-align: …

left center right

display: inline-block

Page 25: Peter Orosz - Šablona od A do Z

https://github.com/peterorosz/vivmail2016 (03-columns.html)

Columns

Page 26: Peter Orosz - Šablona od A do Z

Kostra 1 stĺpca (Outlook)<!--[if (gte mso 9)|(IE)]> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td width="600" valign="top"> <![endif]-->

<!--[if (gte mso 9)|(IE)]> </td> </tr> </table> <![endif]-->

Page 27: Peter Orosz - Šablona od A do Z

Kostra viacerých stĺpcov<!--[if (gte mso 9)|(IE)]> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td width="300" valign="top"> <![endif]—>

<!--[if (gte mso 9)|(IE)]> </td><td width="300" valign="top"> <![endif]-->

<!--[if (gte mso 9)|(IE)]> </td> </tr> </table> <![endif]-->

Page 28: Peter Orosz - Šablona od A do Z

„Výplň“ stĺpcov: 1 stĺpec<div style="width: 100%; max-width: 600px; display: inline-block; vertical-align: top;"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td>

</td> </tr> </table> </div>

Page 29: Peter Orosz - Šablona od A do Z

valign / vertical-align: …

top

bottom

middle

Page 30: Peter Orosz - Šablona od A do Z

valign / vertical-align: …

top

bottommiddle

top

middle middle

bottombottom

bottom

Page 31: Peter Orosz - Šablona od A do Z

valign / vertical-align: …

topmiddle

bottom

Page 32: Peter Orosz - Šablona od A do Z

„Výplň“ stĺpcov: 2 a viac<div style="width: 100%; max-width: 300px; display: inline-block; vertical-align: top;"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td>

</td> </tr> </table> </div>

Page 33: Peter Orosz - Šablona od A do Z

https://github.com/peterorosz/vivmail2016 (04-outer-alignment.html)

Outer Alignment

Page 34: Peter Orosz - Šablona od A do Z

Odsadenie (padding)

Page 35: Peter Orosz - Šablona od A do Z

Odsadenie (padding)

Page 36: Peter Orosz - Šablona od A do Z

Odsadenie (padding)<div style="width: 100%; max-width: 600px; display: inline-block; vertical-align: top;"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td style="padding: 10px;">

</td> </tr> </table> </div>

Page 37: Peter Orosz - Šablona od A do Z

https://github.com/peterorosz/vivmail2016 (05-outer-alignment.html)

Inner Alignment

Page 38: Peter Orosz - Šablona od A do Z

Viac prvkov v 1 stĺpci<table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td> <!-- OBSAH --> </td> </tr> <tr> <td> <!-- OBSAH --> </td> </tr> </table>

Page 39: Peter Orosz - Šablona od A do Z

Odsadenie prvkov stĺpca<table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td> <!-- OBSAH --> </td> </tr> <tr> <td style="padding: 14px 0 0 0;"> <!-- OBSAH --> </td> </tr> </table>

Page 40: Peter Orosz - Šablona od A do Z

Zarovnanie prvkov v stĺpci

• POZOR - v Outlook, <table> nezdedí text-align od nadradeného prvku <table>

<table style="text-align: center;"> <tr> <td> <table> style="text-align: left;"

Page 41: Peter Orosz - Šablona od A do Z

Zarovnanie prvkov v stĺpci

• text-align dávame do najhlbšie vnoreného tagu <table>

<table> <tr> <td> <table style="text-align: center;" >

Page 42: Peter Orosz - Šablona od A do Z

https://github.com/peterorosz/vivmail2016 (06-backgrounds.html,

06-backgrounds-separator.html)

Backgrounds

Page 43: Peter Orosz - Šablona od A do Z

Podfarbenie modulu

<tr> <td style="text-align: center; font-size: 0; background-color: #EEEEEE;"> <!-- Insert columns here --> </td> </tr>

• oštýlujeme <td> riadku

Page 44: Peter Orosz - Šablona od A do Z

"Separator"<tr> <td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td style="font-size: 0; line-height: 0; padding: 10px 0 0 0;"> &nbsp; </td> </tr> </table> </td> </tr>

Page 45: Peter Orosz - Šablona od A do Z

Obrázok na pozadí

• https://backgrounds.cm

Page 46: Peter Orosz - Šablona od A do Z

https://github.com/peterorosz/vivmail2016 (07-fonts.html)

Fonts

Page 47: Peter Orosz - Šablona od A do Z

font-family, -size, line-height<tr> <td style="padding: 14px 0 0 0; font-family: Arial, Helvetica, sans-serif; font-size: 40px; line-height: 48px;">

<b>Toto je nadpis. Vykričte sa!</b>

</td> </tr>

• Kvôli Outlook, Seznam, Centrum, Gmail pridať do každého najvnorenejšieho <td>

Page 48: Peter Orosz - Šablona od A do Z

Op.pl "hack"

<div style="width: 100%; max-width: 300px; display: inline-block; vertical-align: top; font-family: Arial, Helvetica, sans-serif;">

• font-family do každého <div> v šablóne

• (inak override font Verdana)

Page 49: Peter Orosz - Šablona od A do Z

<img> "alt" color, font-size

<img src="#" width="580" height="200" alt="Alt." style="width: 100%; max-width: 580px; color: #000000; font-size: 20px;" />

Page 50: Peter Orosz - Šablona od A do Z

https://github.com/peterorosz/vivmail2016 (08-fonts.html)

Buttons

Page 51: Peter Orosz - Šablona od A do Z

Špeciálny nástroj• https://buttons.cm

• VML height, CSS line-height - výška tlačidla

• VML width, CSS width - šírka tlačidla

• VML fillcolor, CSS background-color

• prepísať font-family, font-size

Page 52: Peter Orosz - Šablona od A do Z

https://github.com/peterorosz/vivmail2016 (09-images.html)

Images

Page 53: Peter Orosz - Šablona od A do Z

Anatómia obrázku

<img src="http://placehold.it/580x200?text=Banner" width="580" height="200" alt="Alt." style="width: 100%; max-width: 580px; height: auto; max-height: 200px; color: #000000; font-size: 20px;" />

• pre Outlook (nepozná max-width, max-height)

Page 54: Peter Orosz - Šablona od A do Z

Anatómia obrázku

<img src="http://placehold.it/580x200?text=Banner" width="580" height="200" alt="Alt." style="width: 100%; max-width: 580px; height: auto; max-height: 200px; color: #000000; font-size: 20px;" />

• pre mobilné zariadenia

Page 55: Peter Orosz - Šablona od A do Z

Anatómia obrázku

<img src="http://placehold.it/580x200?text=Banner" width="580" height="200" alt="Alt." style="width: 100%; max-width: 580px; height: auto; max-height: 200px; color: #000000; font-size: 20px;" />

• pre desktop klientov

Page 56: Peter Orosz - Šablona od A do Z

Anatómia obrázku<img src="http://placehold.it/580x200?text=Banner" width="580" height="200" alt="Alt." style="width: 100%; max-width: 580px; height: auto; max-height: 200px; color: #000000; font-size: 20px;" />

Page 57: Peter Orosz - Šablona od A do Z

Inline obrázky<tr> <td style="font-size: 14px;">

<img src="#" width="65" height="65" style="width: 100%; max-width: 65px; height: auto; max-height: 65px;" />&nbsp;&nbsp;&nbsp;&nbsp;<img src="#" width="65" height="65" style="width: 100%; max-width: 65px; height: auto; max-height: 65px;"/>

</td> </tr>

Page 58: Peter Orosz - Šablona od A do Z

https://github.com/peterorosz/vivmail2016 (10-progressive-enhancement.html)

Progressive enhancement

Page 59: Peter Orosz - Šablona od A do Z

Media queries

max-width: 400pxmax-width: 620px min-width: 401px

max-width: 620px

@media screen and...

Page 60: Peter Orosz - Šablona od A do Z

Hádanka #1

@media screen and (max-width: 620px) { .vpravo { text-align: right; } .nastred { text-align: center; } } <div class="vpravo nastred"> Můj text... </div>

Page 61: Peter Orosz - Šablona od A do Z

Hádanka #2

@media screen and (max-width: 400px) { .nastred { text-align: center; } } @media screen and (min-width: 401px) and (max-width: 620px) { td.nastred { text-align: center; } } <div class="nastred"> Můj text... </div>

??? ???

Page 62: Peter Orosz - Šablona od A do Z

Poradie media queries@media screen and (max-width: 620px) {}

• mobil + phablet

@media screen and (max-width: 400px) {

• mobil

@media screen and (min-width: 401px) and (max-width: 620px) {}

• phablet

Page 63: Peter Orosz - Šablona od A do Z

Plná šírka

Page 64: Peter Orosz - Šablona od A do Z

Plná šírka@media screen and (max-width: 620px) { .responsive { width: 100% !important; max-width: 100% !important; height: auto !important; max-height: none !important; } }

<div style="width: 100%; max-width: 300px; display: inline-block; vertical-align: top;" class="responsive">

<img src="#" width="280" height="200" alt="Alt." style="width: 100%; max-width: 280px; height: auto; max-height: 200px; color: #000000; font-size: 16px;" class="responsive" />

Page 65: Peter Orosz - Šablona od A do Z

Phablety - 2 stĺpce

@media screen and (min-width: 401px) and (max-width: 620px) { div.responsive { width: 50% !important; max-width: 50% !important; height: auto !important; max-height: none !important; } }

Page 66: Peter Orosz - Šablona od A do Z

Phablety - 2 stĺpce