Hack / Safariにのみ適用させる

Saturday, Jul 30, 2005 - 03:22 +09:00

Stokely Safari Hack (Safariのみの指定)

#test { float: left; }
/* \*/
html*#test {
	[float:left;
	float: none;
	]float:left;
}/**/
.dummyend[id]{clear: both;}
* html #test { float: left;}

Bride of Stokely Safari Hack (Safari/Netscape6-7)

#test { float: left; }
/* \*/
html*#test {
	float: none;
}/**/
* html #test { float: left;}

参考:http://www.stormdetector.com/hacks/safarihack.html

1つめが「Stokely Safari Hack」と呼ばれるSafariのみの指定。それを簡略化したのが2つめの「Bride of Stokely Safari Hack」。なので2つめは「Simpler Safari Hack」とも呼ばれます。完全にSafariのみに指定する1つめと違い、2つめはNetscapeにも適用されてしまうのが大きな違いです。開発者も未完成だとは認めていて、要改良・意見求む、だそうな。

上記の例はSig.が仕事で扱うにあたり、オリジナルからちょっとだけカスタムしてしまいますが、効果のほどは実証済みです。この場合、「float: none;」がSafari用の指定。その他のブラウザでは「float: left;」と表示させたい、ということになります。

よくよく見ると、見知ったHackが幾つか組み合わされていることに気付きます。IE-macを除外する「backslash hack」に、IE5-6(Win)とIE5-macとSafariにのみ適用させる「star7 hack」など。さらにオリジナルではIE-win用の「underscore hack」、この例ではIE-win/mac用の「star html hack」を使っています。これは、Sig.の環境ではIE-macが「float: none;」になってしまったため。

Safari用のHackとしては、他に「Safari Spacer Hack」という有名な裏技が存在しましたが、頻繁にバージョンアップを繰り返すMacのブラウザらしく幾つか改善が施されており、結果として属性セレクタの解析バグを利用した「Safari Spacer Hack」は既に使えなくなっています。

この裏技は、Safari対策として今も使える数少ない伝家の宝刀ってこと。

posted in HTML/CSS Trackback (0)

Trackback

このエントリーのトラックバックURL
http://rospear.info/other/mt-tb.cgi/46

« Previous Entry - Next Entry »