+ All Categories
Home > Technology > Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

Date post: 14-Dec-2014
Category:
Upload: campdrupalua
View: 1,656 times
Download: 0 times
Share this document with a friend
Description:
 
32
Best practices for cross- browser compatibility of Drupal website Vadim Mirgorod @dealancer [email protected] http://vmirgorod.name
Transcript
Page 1: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

Best practices for cross-browser compatibility of Drupal website

Vadim Mirgorod

@dealancer

[email protected]

http://vmirgorod.name

Page 2: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

03/01/11

Gold Sponsor ofDrupalCamp Kyiv 2011

Page 3: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

03/01/11

Silver Sponsors ofDrupalCamp Kyiv 2011

Page 4: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

4

Usage share of web browsers: March 2011

Internet Explorer (43.2%) Mozilla Firefox (28.6%) Google Chrome (14.6%) Safari (6.3%) Opera (2.6%) Mobile browsers (4.7%)

Source: http://en.wikipedia.org/wiki/Usage_share_of_web_browsers

Page 5: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

5

Top 12 browsers by StatCounter: May 2011

Source: http://gs.statcounter.com/#browser_version-ww-monthly-201105-201105-bar

← IE 7.0

← IE 6.0

Page 6: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

6

Drupal theming observations

• Modern browsers• IE 6 and IE 7• Opera• Fonts• Drupal core CSS• Fixed-width layout

Page 7: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

7

Drupal theming suggestions

• float: left instead of display: inline­block

• PNG for transparent background• Rounded Corners

– border­radius for Webkit and Opera– ­moz­border­radius for Mozilla– Rounded Corners module for IE

• Web safe fonts• Specific styles for different browsers

Page 8: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

8

Conditional Comments

<!­­[if IE 6]>

Special instructions for IE 6 here

<![endif]­­>

Image by Brenda Starr

Page 9: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

9

Conditional Comments (IE)

Should start with

<!­­[if IE]>

<!­­[if IE 5]>

<!­­[if IE 5.0]>

<!­­[if gte IE 5]>

<!­­[if lt IE 6]>

<!­­[if lte IE 5.5]>

<!­­[if gt IE 6]>

gt – greater thenlt – lower thengte – greater then or equal tolte – lower then or equal to

Page 10: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

10

Conditional Comments(non-IE)

<!­­[if !IE]><!­­>

<h1>You are NOT using Internet Explorer</h1>

<!­­<![endif]­­>

<!­­[if IE 6]><!­­>

<h1>You are using EITHER IE 6 OR a non­IE</h1>

<!­­<![endif]­­>

<!­­[if IE 6]>Instructions for IE6<!­­>

Instructions for IE6 and non­IE

<!­­<![endif]­­>

Page 11: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

11

Conditional Comments in Conditional Comments in DrupalDrupal

3 Paths3 PathsImage by Image by Ryan B SchultzRyan B Schultz

Page 12: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

12

Padawan Path:sites/all/themes/your_theme/page.tpl.php

Page 13: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

13

Jedi Knight Path:sites/all/themes/your_theme/template.php

Page 14: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

14

Jedi Master Path (D7):sites/all/themes/your_theme/template.php

See drupal_pre_render_conditional_comments()

Page 15: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

15

CSS HacksCSS Hacks

Image by Image by LincolnianLincolnian

Page 16: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

16

CSS Hacks/Filters

A hack is a method of exploiting the way a web browser parses CSS rules, to control the styles a webpage receives.

‘Control’ includes the ability to hide or change rules based on the browser type and/or version.

Page 17: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

17

CSS Hacks Examples

Page 18: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

18

JavaScript Trick

Image by Image by Jenn and TonyJenn and Tony

Page 19: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

19

JavaScript Tricktheme.js:

opera.css:

Page 20: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

20

Useful modules for cross- browser compatibility

Page 21: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

21

Conditional Stylesheets(D6 and D7)

you_theme.info:

; Set the conditional stylesheets that are processed by IE.

stylesheets­conditional[lt IE 7][all][] = ie6­and­below.css

stylesheets­conditional[IE 9][all][] = ie9.css

stylesheets­conditional[IE][print][] = ie­print.css

http://drupal.org/project/conditional_styles

Page 22: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

22

Conditional CSS Integration(D6)

http://drupal.org/project/conditional_css

Page 23: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

23

IE CSS Optimizer(D6)

Solves the Internet Explorer limitation of loading not more than 31 CSS files per HTML page. Provides flexible settings for CSS optimization.

http://drupal.org/project/ie_css_optimizer

Page 24: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

24

IE Unlimited CSS Loader(D6)

Does almost the same as IE CSS Optimizer does with a small differences. Have no settings.

Allows for up to 9 additional stylesheets explicitly embedded in page.tpl.php, that the module logic does not know about.

http://drupal.org/project/unlimited_css

Page 25: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

25

Testing Tools

Image by tronixstuff

Page 26: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

26

Browser compatibility testing software

• Compatibility mode in IE8• IE Tester: http://ietester.com/• MultiplesIEs: http://tredosoft.com/multiple_ie• Multi-Safari:

http://michelf.com/projects/multi-safari/• Mozilla Firefox Collection:

http://mozilla-firefox-collection.en.softonic.com/

Page 27: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

27

IE Tester

Page 28: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

28

Web Services

• http://browserlab.adobe.com/

• http://ipinfo.info/netrenderer/• http://www.webdevlab.com/• Many others

Page 29: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

29

HTML/CSS Validators

Web services:http://validator.w3.org/http://jigsaw.w3.org/css-validator/

Firefox addons:http://users.skynet.be/mgueury/mozilla/

https://addons.mozilla.org/en-US/firefox/addon/css-validator/

Page 30: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

30

Virtual Machines

Virtual Machine emulates behavior of PC running Guest OS. VM is executed on top of Host OS or Hypervisor. Several instances of Virtual Machine could work simultaneously.

Software: Oracle VirtualBox, VMWare, Microsoft VirtualPC, etc...

Page 31: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

31

Browser Tools

• Firebug for Firefox• Firebug Light• Internet Explorer Developer Tools• Webkit Web Inspector

Page 32: Vadim Mirgorod.Best practices for cross browser compatibility of drupal website.DrupalCamp Kyiv 2011

Questions?

Feedback@[email protected]://vmirgorod.name


Recommended