Mobile Safari CSS HTML5の新要素をブロックレベルにする

article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display:block;
}

HTML5で追加された新要素の場合、ブラウザーによってはdisplayのデフォルト値がセットされていないことがある(Firefox3.6ではheaderがインライン要素になってたような…)。ブロックレベルに該当する要素には、あらかじめ display;block をかけておくと安心。

参考書籍:HTML5+CSS3で作る  魅せるiPhoneサイト  iPhone/iPad/iPod touch対応
HTML5+CSS3で作る 魅せるiPhoneサイト

HTML5 head要素の定義 iPhone対応版

<!DOCTYPE html>
<html lang=”ja”>
<meta charset=”utf-8″ />
<title></title> ←文字コードより後に配置すること。
<meta name=”format-detection” content=”telephone=no” /> ←電話番号認識の無効化
<link rel=”apple-touch-icon” href=”img/home.png” /> ←ホーム画面用アイコンの指定
<link rel=”stylesheet” href=”css/iphone.css” media=”screen” /> ←スマートフォン向けのmedia属性

※ホーム画面用のアイコンは、114×114以上のPNG画像。ホーム画面の角丸と光沢はiPhoneが自動でつけるので、アイコンに大して角丸・光沢をつける必要はない。
(自動での装飾をさせたくない場合、<link rel=”apple-touch-icoun-precomposed” href=”img/home.pmg” />と書く。ただし、角丸は必ず適用される)

参考書籍:HTML5+CSS3で作る  魅せるiPhoneサイト  iPhone/iPad/iPod touch対応
HTML5+CSS3で作る 魅せるiPhoneサイト

iPhoneからのアクセスをJavaScriptで振り分ける

<head>
<script>
if(navigator.userAgent.indexOf(‘iPhone’) != -1) {
    location.href=”http://www.hogehoge.com/iphone/”;
}
</script>
</head>

↑のコードをデスクトップ向けトップページ(index.html)のhead要素内に記述しておくと、iPhoneから「http://www.hogehoge.com/」にアクセスした時に、「http://www.hogehoge.com/iphone/」に自動転送される。

参考書籍:HTML5+CSS3で作る  魅せるiPhoneサイト  iPhone/iPad/iPod touch対応
HTML5+CSS3で作る 魅せるiPhoneサイト