IE9のハック?
2011 年 8 月 10 日 水曜日html>/**/body #right_contents {
background-color /***/:#ffff00;
}
これで IE以外のすべてのブラウザに対応してくれます。
希望とは反対の挙動をしてくれるのですが まぁ今回は、これでいいかなぁ~と・・・・

html>/**/body #right_contents {
background-color /***/:#ffff00;
}
これで IE以外のすべてのブラウザに対応してくれます。
希望とは反対の挙動をしてくれるのですが まぁ今回は、これでいいかなぁ~と・・・・
今回 Operaのバグにひっかかりました。初体験です。
ひかえてあったハックかましてもダメだし 疲れました・・・
で なんとか見つけたので こちらから忘れないように転記させていただきます。
body selector(B)・・・IE
body:not(:target) selector(A)・・・Opera(+Firefox、Safari)
html:not([lang*=""]) selector(B)・・・Firefox(+Google Chrome2)
html:not(:only-child:only-child) selector(B)・・・Safari
今回メニュー部分を固定させるデザインの案件を受けて丸3日戦ってやっと勝ちました。
誰にかと言うと もちろん! IE6!
cssとjavaを使った方法があって cssを使った方法ってサイト全体が左寄せのばっかりで
1個だけ中央寄せに対応したのを見つけたのですが
現在閉鎖されている英語サイトで配布されているもので もちろんシェアーでした。
でもサイトが閉鎖されているからお金を払うことも出来なくて
で もしそのサイトが復活して 使っているのが見つかったら・・・(以下ry)
で 左寄せで作ってあるjavaをちょっこし改造して 中央寄せ対応にしたのですが
なぜかカクカク動くんです。
その修正方法が載っているサイトも見つけたのですが 気力が・・・
と言う事で完成したのが↓です。
CSS Lectureさんのを参考にさせていただきました。と言うかまんまです。^^;
もちろんIE6のXML宣言のバグの対応もしてます。対応方法は、こちらです。
◆htmlの記述です。
<!--#if expr="$HTTP_USER_AGENT != /MSIE 6.0/ || $HTTP_USER_AGENT != /Windows/ " --><?xml version="1.0" encoding="UTF-8"?>
<!--#endif -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
<title>レッドトイボックス</title>
<meta http-equiv=”Content-Style-Type” content=”text/css” />
<link rel=”stylesheet” type=”text/css” media=”screen, print, tv, projection, tty” href=”css/common.css” />
</head>
<body>
<div id=”container”>
<div id=”content”>
<h1>レッドトイボックス</h1>
<p>内容</p>
</div><!– /div#content –>
<div id=”main_menu”>
<ul>
<li><a href=”../../index.html” title=”HOME”>HOME</a></li>
<li><a href=”../../koinu/index.html”>トイプードルレッドの子犬</a></li>
<li><a href=”../../koinu/chihuahua-koinu.html”>チョコタンチワワの子犬</a></li>
<li><a href=”../../info/index.html”>子犬お渡しまでの流れ</a></li>
<li><a href=”../../various/index.html”>特定商取引表示</a></li>
<li><a href=”../../various/inq.php”>お問い合せ</a></li>
<li><a href=”../../breed/policy.html”>私たちのブリーディングポリシー</a></li>
</ul>
</div><!– /div#main_menu –>
</div><!– /div#container –>
<div id=”footer”>
<address>Copyright (c) 2010 <a href=”index.html”>レッドトイボックス</a> All Rights Reserved.</address>
</div><!– /div#footer –>
</body>
</html>
◆次は、cssの記述です。
#container {
width:1000px;
margin:0 auto 0 auto;
padding:0;
text-align:left;
position: relative;
}
#content {
width:800px;
margin:0;
padding:0 0 0 200px;
}
#main_menu {
width:174px;
margin:0;
padding:0;
}
#main_menu ul {
margin:20px 0 0 0;
paddig:0;
position: fixed;
top:60px;
z-index:20;
}
* html div#main_menu ul {
position:absolute;
top: expression(eval(document.documentElement.scrollTop+60));
}
久しぶりに更新と言うか 久しぶりに煮詰まってたのが解決したので
忘れないように書いときます。
inputにロールオーバーつけるのって前に書いたんだけど
phpの記述内に入れたら IE6で反応してくれなくて><
1日半を費やしてしまいました・・・・
1.csshover3.htcをDLします。こちらが配布サイト です。
2.cssに設定します。
body {
behavior:url("../js/csshover3.htc");
}
bodyに設定するしするので もうぉ~~これでロールオーバーさせ放題!
:hover や :active の他に :focus もバッチシ!
でもサーバーによって反応しない時もあるらしくて
その時は、.htaccess に
AddType text/x-component .htc
って書くと幸せになれるかもしれないらしいです。
clearfixが良く使われていたのですが IE8でも使えるのがあるのか知りません。
と言うか 私は、clearfixを使った事がないのです。
いつも 私が使うのは、親要素に float:left; を入れます。
でも これだと場合によっては、都合が悪い時があるのでその時には、 overflow: hidden; 使います。
<div id="oyayouso">
<div class="hidari">
<p>ごまとすももは、こむぎとケビンの子供です。</p>
</div>
<div class="migi">
<p>くるみは、プリンの子供です。</p>
</div>
</div>
#oyayouso {
overflow: hidden;
}
.hidari {
float:left;
}
.migi {
float:left;
}