【MacIE5】
インライン・スタイルシートでのtext-align指定よりも親要素のalign属性指定を優先する?
http://pc2.2ch.net/test/read.cgi/hp/1055536413/196-201 <style type="text/css"><!--
.text {width:60%;text-align:left}
-->
</style>
<body>
<div align="center">
<h1 >見出し</h1>
<p>短い文章</p>
<p class="text">数回の改行タグがはいる、長めの文章</p>
</div>
</body>
>マック版のIEではOSXで5.2、OS9.2で5、[……]
>インライン要素は左寄せにしたいんです。でもってそのブロック要素自体は
>他のブロック要素とそろえてまん中にもってきたいということなんですが。
><p></p>だけが左寄せになってしまう
とのこと。
ふと思った。
Operaがversion7になってからのバグって、
どうもWinIEと通底したものが多くなってませんか。
WinIEに合せて作り直したが故のバグではないかと。
【Opera7】
バグと思われるもの
http://dai.pekori.to/opera/o7/css#bugs 或要素にwidth, heightが指定してあり、それにoverflow: visible | hidden;が指定してあるとする。その場合、その子要素にoverflowを指定するとそれは全部overflow: hiddenとして処理される。
親要素のスタイルがfont-size: 100%;が不味い。継承する毎にフォントサイズを小さく計算する。
outlineプロパティは非対応であると思う。
displayプロパティの値に使うinline-tableとかの表関連のレンダリングは期待する様にはならない。
tableやtdのborder-right, border-bottomのレンダリングがおかしい
caption-side: left|right;とすると、caption要素がどこかに旅立つ。
html { padding-bottom: ...;}が効かない。
>>218 WinIEに合わせなきゃ使ってもらえないだろ。
CSSなんか知らない人がmozilla使ったら、
IEと違う表示になる欠陥品としか思わない。
わかっている人にはバグでも、それすらエミュレートする事で
CSS知らない人にはOperaはIEと同じ表示だという安心感を与えるのだ。
223 :
Name_Not_Found:03/06/21 13:22 ID:VPQrT5wx
>>222 6.0で「css2完全対応(overflow、音声関係以外)」とか書かれてたから
opera6.0の仕様通り
225 :
Name_Not_Found:03/06/21 13:45 ID:VPQrT5wx
>>224 成程、W3Cではなく、Operaの「仕様」ってことですね。まぎらはしい……
219までの分を更新しました。
>>206 確かにその現象が発生します。ただ、レンダリングの問題と
いうよりはキャッシュ機能周りの問題かもしれません。
>>207 WinIE112に追加。
>>208 Opera054に追加。
>>216-217 このバグは発生しないということでしょうか?
>>219 Opera6.06/7.03/7.11で確認できたものだけ追加。
・displayプロパティの…… →Opera055
・caption-side…… →Opera056
・html {padding…… →Opera057
>>226 いつもご苦労様。
>
>>206 >確かにその現象が発生します。ただ、レンダリングの問題と
>いうよりはキャッシュ機能周りの問題かもしれません。
ううむ、スタイル指定によってキャッシュ機能に異常が出るってのは
凄いCSSバグですよね。
素のHTMLだけでは生じないんですから。
>>219 font-size:100% のバグは、Opera7では直っているはずだよ。
たぶん、ver6〜7βのころのバグ
230 :
Name_Not_Found:03/06/23 22:17 ID:4Ds1x8Tj
Natscape 7.02 で position を使った table の配置が
意図した結果になりませんが、仕様でしょうか?
table 以外は意図した通りの配置になるのですが、table では
top と left の指定が働いていないように見えます。
IE6 では問題(?)ないようです。
<div style="background: teal; height: 10em;">
<table style="position:relative; top:5%; left:5%; width:50px; height:50px; background:aqua;">
<tr>
<td>table</td>
</tr>
</table>
<div style="position:relative; top:5%; left:5%; width:50px; height:50px; background:aqua;">
<table>
<td>div</td>
</table>
</div>
<h1 style="position:relative; top:5%; left:5%; width:50px; height:50px; background:aqua;">
h1
</h1>
</div>
最初はこれに該当するのかと思いましたが、高さを明示した上記のコードでも
結果は変わりませんでした。
# [2-225] 高さが明示されていない要素内ではtopプロパティの%値指定が無効(N6.2)
ttp://cssbug.tripod.co.jp/detail/mozilla/b020.html position は最近使い始めたばかりで、
もし見当違いの質問だったらすみません〜。
>>230 配置指定の単位が%でなくpxやemだと、ちゃんと効くな。
table要素だけのバグかな。
li {
list-style-image:url("./../style_image/list-marker.gif");
}
ul.class li {
list-style-image:none;
}
<ul class="class">
<li>hoge</li>
</ul>
IE6標準モードでこのようにすると
none と指定しているにも関わらずマーカーが表示される模様。
ダミーの透過画像を呼ぶ架空のファイルを呼べば一応対処できるけど。
しつもーん
li {
border:10px solid #000000;
list-style:disc outside url("image.png");
}
opera7.11 標準モード
リストマーカーとボーダーが重なる
ie6 標準モード
リストマーカーはボーダーの外に表示される
どちらが間違い?
因みにoperaはborderの変わりにpaddingでやっても同じ挙動だった。
>235
ごめんlist-style-typeとlist-style-imageを間違えてた……。
というわけで忘れて下さい(´Д`;)
238 :
no name:03/06/25 15:35 ID:JKawtqAg
オペラのバグ発見?
opera 7.11 は標準モード、互換モードに関わらず、bodyに指定したマージンが0になりません。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<title></title>
<style type="text/css">
<!--
body {
margin:0;
}
h1 {
margin:0;
background:#fcc;
}
p {
margin:0;
background:#ccf;
}
-->
</style>
</head>
<body>
<h1>見だし</h1>
<p>本文</p>
</body>
>238 ここはご覧になりまして?
http://jp.opera.com/docs/specs/index.html > IE と Netscape のデフォルトスタイルシートは
> body 要素に margin: 8px が設定されており、
> Opera は padding: 8px が設定されています。
> パディングとは body 要素とその内容との間の余白であり、
> マージンとは body 要素と html 要素 (または head 要素の可視部分)
> との間の余白です。もし、 body に margin または padding を
> 明示的に設定したい場合は、もう一方も設定するべきです。
>>238 operaに標準モード、互換モードなんてあったっけ?
>240
7からある。
http://pc2.2ch.net/test/read.cgi/hp/1055536413/446n >IE5.5、オペラ7.10では問題ないのにネスケ7が意図しない表示になります。
>内容をheight:100%でブラウザの上下ぴったりに合わせたいわけです。
<body style="height:100%">
<div style="height:95%">
<div>上枠</div>
<div>内容(横に3分割)</div>
</div> // "95%"閉じ
<div style="height:5%">下枠</div>
</body>
>要素にボーダーをつけて調べたところ、ネスケはbodyのheightが効いていないようです。
http://pc2.2ch.net/test/read.cgi/hp/1055536413/482-491n ><body style="height: 1000px">としたところ、
>きちんと反映されます。上枠下枠比95:5もきちんと反映されます。
>完全無視で「なかったことにされる」のは%だけのようです。
><html style="height: 100%">がネスケ7で利きました!
>で、ネスケ7でも意図した体裁になりました。htmlとbodyの両方に
>heightを指定しなければだめですね。もちろん、IEやオペラでは
>htmlのheight指定なしで大丈夫です。
これってIE・Operaのバグになるのかなあ?
>heightの%指定は親要素に対する割合だからね。
>無視されても仕方ないのかも。
>>242 つーか、bodyのheight100%って・・・
>>243 position:fixedでなくoverflowで擬似フレームを組むときは
よくやることだけど? 既出
>>165-183参照。
>>242 bodyのheight:100%はhtml要素の高さに対する100%なんだから
ネスケの挙動が正しいんじゃないか?
>>223 それ、MozillaだけでなくWinIE6でもなったけど。
overflowでスクロールバーが出るときの高さ計算が正しくない(N7.0/M1.4RC2)
http://cssbug.tripod.co.jp/detail/mozilla/b058.html 上のページの「WinIE6.0での表示(標準モード)」の例示画像と違って、
うちのWindows98SEのIE6では、Mozillaと同じく下マージンが無視されます。
標準モードでも互換モードでも、です。
但し、上のソースのheight:5emを6em以上にするとちゃんと表示された。
Opera7.03も下マージン無効、height値を変更してもIEみたいに直らない。
>>234 Opera7のバグではないか?
<ul style="border:1px solid red;">
<li style="border:15px solid yellow;">リスト1</li>
<li style="border:1px solid blue;">リスト2</li>
</ul>
確かにリスト1のマーカーが左ボーダーの上に重なる。
リスト2のマーカーと較べると明らかに右にズレてしまってますね。
しかもOperaの表示には他にも不審なことがある。
上の例だと、ulとリスト1・リスト2それぞれのli要素に枠線が付くが、
そのリスト1のborderの周りに隙間が空き、MozillaやWinIEみたいにくっつかない。
ul, li {margin:0;padding:0;} にしても隙間は消えません。
253 :
262:03/06/27 17:40 ID:???
254 :
262:03/06/27 17:55 ID:???
たびたびごめん。
>>253に補足。
たぶん、こんなことではないか。
list-style-position:inside;にした時のリストマーカーを、
Mozillaではインライン要素と見なす。
そのため「先頭にフロートがあるリストアイテム要素」で「インライン要素に挟まれているフロート」の状態になってバグが起る。
しかしWinIEではリストマーカーをインライン要素とは見なさない。そのためバグが起きない。
前スレッド
http://pc2.2ch.net/hp/kako/991/991666454.html の187-189参照。
>248
そのバグのせいでリストマーカーに画像を使うと
文字と激しくくっついてなんかイヤンな感じ…。
>>234 Opera058に追加。
CSS2仕様書ではマーカーの位置を詳しく定めていないので
マーカーがボーダーやパディングの上に来ること自体は
CSS2に反しているとは言えないかもしれません。
>>238 Opera059に追加。
>>242 Moz061に追加。
>>247 WinIE114とOpera060に追加。
>>252 WinIE113に追加。
body要素へのheightプロパティ%値指定が無視される(N7.0/M1.4RC2)
http://members.tripod.co.jp/cssbug/detail/mozilla/b061.html 以下は上記のバグ報告に対する突っ込み。有識者の意見求む。
>body要素に対してheightプロパティを%値で指定されたとき、
>WinIEやOperaは初期コンテナブロック(≒閲覧領域)の高さに対する%値を算出します。
>一方、Mozilla/Netscapeはhtml要素の高さに対する%値を算出します。
何故「初期コンテナブロック≒閲覧領域」ですか。全く異なる概念なのですが。
閲覧領域は、画面表示を行う UA における整形構造が出力される空間のことです。
初期コンテナブロックは、その空間の中に表示される整形構造のルート部です。
「html要素の高さ=初期コンテナブロック」なので、この解説は矛盾しています。
>初期コンテナブロックの高さはルート要素の'height'プロパティで指定するとよい。
>このプロパティが値'auto'を取る場合、初期コンテナブロックの高さは文書の内容量に合わせて変化することになる。
http://www.swlab.csce.kyushu-u.ac.jp/man/rec-css2/visuren.html#containing-block >このときhtml要素の高さを明示していなければ、
>body要素に対するheightプロパティの%値指定は height:auto; として扱われます。
>コンテナブロックの高さが明示されておらず、内容領域の高さに依存していれば、'auto'として解釈する。
http://www.swlab.csce.kyushu-u.ac.jp/man/rec-css2/visudet.html#the-height-property と書かれているので、「auto」として解釈されるのは仕様通りの解釈だと思いますが。
>WinIEやOperaはbody要素をルート要素にしているのに対し、
>Mozilla/Netscapeはhtml要素をルート要素にしているためにこのような違いが発生します。
body要素をルート要素として扱っている訳ではないでしょ。その根拠は何ですか?
Netscape7/Mozilla の実装が仕様通りの解釈で、WinIE や Opera が慣習的な解釈による間違った実装なのでは。
現に Netscape7/Mozilla の互換モードでは、WinIE や Opera と同じ様に解釈されます。
>>257 の続き。
今度は、初期コンテナブロックの算出方法についての考察。
>ルート要素のコンテナブロック(これを初期コンテナブロックと呼ぶ)はユーザエージェントが定める。
>初期コンテナブロックの横幅はルート要素の'width'プロパティで指定するとよい。このプロパティが値'auto'を取る場合はユーザエージェントが初期幅を決定する(たとえば、その時点における閲覧領域の幅などを用いる)。
>初期コンテナブロックの高さはルート要素の'height'プロパティで指定するとよい。このプロパティが値'auto'を取る場合、初期コンテナブロックの高さは文書の内容量に合わせて変化することになる。
と定義されているだけで、その他の値の解釈は明確化されていません。
CSS2 の Errata 及び CSS2 revision 1 では、
提案として下記のように追記されてはいますが。
>UAはルート要素のコンテナブロック自由に選ぶ(see 10.1), そのため、この文は提案として付け加えられた:
>UAはルート要素の高さのパーセント値を表示領域との割合で計算するかもしれない.
以上の事から考えると、
html, body要素のパーセント指定の解釈は不定という事になり、
安定した視覚効果は得えられない、というのが実情なのです。
ですから、こういった視覚効果は望まないというのが得策かと。
身も蓋もない結論ですが、そういう仕様なのですから仕方がありません。
>>257 の訂正。
「html要素の高さ=初期コンテナブロックの高さ」の間違い。
>>245はCSSバグなのか、それとも他の原因なのか……。
>>262 スレ違い。でもこんな馬鹿久しぶりにみた。
そんな迷惑な屑スクリプト書いて喜んでるのだろうか。
アクセシビリティを低下させる実験でもやってるのか(w
>>265 Opera7.11ですが、両ページとも問題なく表示されました。
268 :
Name_Not_Found:03/06/30 12:47 ID:mciNNA3I
ウインドウズ98SEで、IE6.0及びオペラ7.11で。
<fieldset>要素において、paddingプロパティが下部を除いて機能しません。
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "
http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="
http://www.w3.org/1999/xhtml" xml:lang="ja">
<head>
<meta http-equiv="content-style-type" content="text/css" />
<meta http-equiv="content-type" content="text/html;charset=shift_jis" />
<title><fieldset>要素での不具合。</title>
</head>
<body>
<form action="#">
<fieldset style="padding: 4em; ">
<legend style="margin: 0em; padding: 0em; ">フォームの見本</legend>
<input style="margin: 0em; padding: 0em; " type="text" name="sample" />
</fieldset>
</form>
</body>
</html>
269 :
268:03/06/30 12:50 ID:mciNNA3I
>>268の<title>要素の内容は実体参照です。
正:<title><fieldset>要素の不具合</title>
271 :
HDI:03/07/02 16:37 ID:kM5bgMWU
html 要素の style 属性は無意味と言うか、そんなものは無いから外せ。
バグ辞典スレにも "html 要素の高さ" なんて言ってる馬鹿がいるけど、
実際に CSS が適用されるのは body 要素とそれに含まれるものだけ。
HTML要素にstyle属性は確かにないが
スタイルシートが適用できないわけではない。
style要素や外部スタイルシートで指定すればいいだけのこと。
ニヤニヤ
>>257-259 間違ったことを書いてしまいました。
そこで、書き直してみました。
>>265 Opera061に追加。
>>268 WinIE115、Opera062に追加。
当方では左・右・下の3方のパディングが機能し、
上パディングがボーダーの外側に設置されてました。
>>270 背景色が無効になる件をNN019に追加。
一意セレクタについては再現できませんでした。
(背景色が赤色になりました)
279 :
270:03/07/03 21:31 ID:???
>>278 >一意セレクタについては再現できませんでした。
こちらでは、下記サイトをNN4.75/Win98SEで見た時、
div#TopTitleへの背景指定が有効になってます。
http://www.ne.jp/asahi/anarchy/saluton/index.html そちらではdiv#TopTitleの背景指定が無効になって見えるのですか?
だとすると、H1のタイトルが背景色と同色になってしまって見えないはずですが……。
但しシートで#row2をdiv#row2としてスタイル指定すると、こちらでも効かなくなります。
セレクタを要素#idとしても効く時と効かなくなる時とがあるみたいで。
280 :
268:03/07/03 21:57 ID:yEZOWD1C
>>278 詳しい追試ありがとうございました。
掲示板CGIを書いていて気付いたものでした。また何かあったらご報告致します。
追記:もじら系ではこの異常は見られませんでした。
【WinIE5.5〜】
http://cssbug.tripod.co.jp/detail/winie/b028.html >li要素の子孫にdl要素を置くと、li要素につくリストマークが上方にずれて
>表示される。また、この状態のli要素に上ボーダーを設定すると
>リストマークが消える。
のみならず、例示では、なぜかボーダーを設定してない一番上のリストのマーカーも消えてますね。
このバグを回避する方法二つ。
1)dl要素をブロックレベル要素で括る
<li><div><dl>
<dt>Win95</dt><dd>1995年</dd>
</dl></div></li>
2)ブロックレベル要素でなくてコメントでもいいからとにかくdlタグの前後に挿入する。
<li><!--コメント--><dl>
<dt>Win95</dt><dd>1995年</dd>
</dl><!--コメント--></li>
282 :
271=HDI:03/07/04 08:23 ID:stgNXSE1
>>273 参楠。
ご指摘のページは見てましたけど、私のケースもこれに該当というわけですね。
283 :
271=HDI:03/07/04 08:25 ID:stgNXSE1
それともひとつすいません。同じく NN4.78 で、span に margin を指定すると
前後で強制されてしまうのはガイシュツでしょうか?
サンプルコード(そのままコピペしてエディタで保存してください)
────
マージンをつけた<span style="margin-style:solid; margin: 2px; padding: 2px; background-color: #f00;">この文字</span>が途中で改行されてしまう
────
284 :
Name_Not_Found:03/07/04 14:16 ID:Lln5OI7y
>>283 margin-style:solid; ……ナニコレ?
それに、NN4.75で試したけれど、それだけでは別に強制改行されませんよ。
そもそもインライン要素に対するbox関係スタイルの指定は、
NN4やWinIE5.0ではまだ実装されてなかったはずです。
スタイルシートを使ったページは最低WinIE5.5相当の解釈力を持つUAで見てほしいよな。
288 :
_:03/07/04 19:02 ID:???
>>285 最低限のコードに変えてみた。
----
マージンをつけた<span style="margin:2px; background-color: #f00;">この文字</span>が途中で改行されてしまう
----
これでも
>>283のコードでも、「マージンを」の上に「この文字」が重なって見える。
>>286ということであれば、了解。
290 :
Name_Not_Found:03/07/05 04:35 ID:arokdp2I
>>289 確かにそれだけで試すとご指摘通り重なって見える。
ところが、たまたま前後が下記の通りのソースに挿入したら
なぜか強制改行バグは起らなかった。
<BODY>
<hr style="height:5px;">
マージンをつけた<span style="margin:1px;background-color: #f00;">この文字</span>が途中で改行されてしまう
<hr>
<img ="../img/img01.png" alt="★" style="margin:5px;">
</BODY>
但しその代り、背景色が無効になり、img要素がページ先頭に來るわけのわからんバグが起きるけど。
NN4はバグすら規則性が無い滅茶苦茶なレンダリングだから、相手にするだけ無駄かも。
>>292 そのコードで何度かリロードしてると、強制改行バグが出たり
出なかったりしてわけがわからん…
imgがページ先頭に来るのは一貫してそうだったけど、これは
style="margin:5px;" を外したらきちんと文章の後ろに来た。
Mozilla1.4ベースのNetscape7.1が出てるね。
>>206の問題も、N7.1では生じなくなった。やはりスタイル指定が原因だった?
>>297 おつかれさま。
>どちらの方法を使用してもマーカーはずれたままです……。
いえ、
>>281は「一番上のリストのマーカーが消える」ことの回避法です。
(バグとして記述されてませんが、先頭のリストのマーカーが消えてますよね?)
一番上以外のリストマーカーのずれはこの方法でも直りません。
直すとしたら li dl {margin-top:-1em;} かな。
【Win Opera7.11】
HTMLで背景色を指定したテーブルセル内のinputとtextareaに指定した背景色が無視される
例示
<table>
<tr><td bgcolor="#000000"><input style="background:#fff;"></td></tr>
<tr><td bgcolor="#000000"><textarea style="background:#fff;"></textarea></td></tr>
</table>
validでない、と言われればそれまでなんですけども…
Mozilla1.2やIE6.0では問題なく効いているので。
既出でしたらスマソ
>>301 Opera7.11で試しましたが、再現されませんヨ。背景色は有効です。
何か他のスタイル指定が問題なのでは。
303 :
301:03/07/07 13:24 ID:???
>302
Σ(´Д`||)本当だ、例示じゃ再現しない…
ちょっと追試してきます、スマソ
Moz1.4でUserStyleSheetを使い
* {
cursor:auto !important;
}
とするとアンカーにカーソルが触れても指先にならず、
本文に重ねた時と同じ I 字のものになりますが
これは動作としてどうなのでしょうか。
>>304 単純に a[href] { cursor: auto; } こうしてもなるね。
autoってお任せだから何でもアリのような気はするが
でもcursor無指定の状態とは違うし。
バグっちゅーか正しくないような気はする…。
>>306 cursorのデフォルト値はautoだから明らかにバグ
>>308 結合ボーダーモデル(border-collapse:collapse)は
CSS2 の概念であって、HTML にはない概念なのだから、
矛盾が生じても何ら不思議ではないと思うのだが、如何か。
border-collapse:collapse;にしたら既定値の筈のrules="all"が無効になるってのは
やはり変だよ。要修正のバグだ。
>>311 確かに変ではあるけれども、差ほど問題ではないと思う。
制作者側のスタイルでボーダーを指定すればよいわけだし。
rules属性とかの効果は、CSSでも再現することができるし。
CSSを無効にすれば、結合ボーダーモデルも解除されるし。
というか、CSSのバクといえるのかどうかが疑問なのだが。
CSSの指定(border-collapse:collapse)が関係のないrules属性まで変化させるって意味では、
CSSのバグですな。
どちらにしろ、Operaのためには、いちいちborderプロパティやrules属性を
指定しなきゃならんわけで。面倒くさいこった。
>>313 >スタイルシートは見た目の調整のためにあるのではありません。
>制作者は閲覧者のブラウザを決定できませんから、ある特定のブラウザのデフォルトスタイルに「パッチ」を当てる様な形で不完全なスタイルシートを記述し、提供するのは、望ましいやり方ではありません。
>制作者は常に、完全なスタイルをスタイルシートで実現しておくべきです。
一般に、スタイルシート・オフで閲覧する人などを考慮したら、
tableの属性のうちborder属性だけでも使っておく方がいい。
<table border="2">とか指定してあればそれは明示せずともrules="all"であるのが定め。
これに反する表示は、仕様に則した「デフォルトスタイル」とは認められない。
既にborder属性が指定してあるのにth,td{border:〜}等と指定するのは
屋上屋を架する無駄。
ところがOperaはソースに無駄な記述を求めるわけだ。
IE至上主義
? Mozillaでも同じこと。Operaだけが……
>>315 それでは、ボーダー色とかを変更するときはどうするのさ?
拡張属性で「bordercolor="gray"」とかタグに記述するのか?
点線・破線とかのスタイルも、CSS でないと表現できないだろ?
「border-collapse:collapse」を指定するってことは、
結合ボーダーモデルに基づいて、ボーダーを適用させたいんだろ?
だったら、CSS のボーダー関連プロパティを利用しなければ、
意図通りにボーダーを付けることができないじゃん。違うか?
制作者のスタイルで「border-collapse:collapse」を指定しておいて、
ボーダー関連プロパティを指定しないってのはナンセンスだと思うが。
>>318 >ボーダー色とかを変更するときはどうするのさ?
それは話が別。
>>315はそこまで求めてない。
だいたいbordercolor属性なんぞは独自拡張に過ぎない。
しかるにborder属性はさにあらず、ちゃんと仕様書で認められたものです。
既にborder属性がしてあってそれで十分なのに
重ねてborderプロパティの指定を求める方がナンセンス。後方互換性から言っても。
それとも、border-collapseプロパティを指定したら
borderプロパティを指定しなければならないって仕様にありましたかね?
類例。もし下記の記述で、不具合が起きたら、それはブラウザが悪いだろ?
table {border-color:red;}
<table border="1">
>>319 >既にborder属性がしてあってそれで十分なのに
>重ねてborderプロパティの指定を求める方がナンセンス。後方互換性から言っても。
十分であるかどうかは個人の好みの問題では。
それに、行や列単位で枠線を付けたいときはどうするのでしょう。
そういう表を作成するときもあると思うのですが。
>それとも、border-collapseプロパティを指定したら
>borderプロパティを指定しなければならないって仕様にありましたかね?
セル要素には border-color を指定した方が宜しいかと。
場合によっては、枠線が見えにくくなることがあるので。
列グループとか、行グループとかの区切りを見易くしたりとか、
何か目的を持って結合ボーダーモデルを利用すると思うので、
必然的に borderプロパティとかを指定する場合が多いのでは。
>セル要素には border-color を指定した方が宜しいかと。
>場合によっては、枠線が見えにくくなることがあるので。
同意。てかそのためのCSSでしょ?
HTMLのborder属性とCSSのborderプロパティは目的が違うと思う。
>>320 >十分であるかどうかは個人の好みの問題では。
その通り。そして
>>315はそこまで求めてない。したがって
>>319は却下。
>場合によっては、枠線が見えにくくなることがあるので。
普通は他に背景色など何も指定しなければ、そんなことはない。
よってborder属性だけで足りてプロパティの必要は無い。
但し、もっとスタイルを細かく指定したい時や見えにくくなるときはCSSでborderを使用すればよし。
それだけのこと。
どちらかに決めつけずともいいはず。
323 :
322:03/07/10 08:06 ID:???
>>322 >>場合によっては、枠線が見えにくくなることがあるので。
>普通は他に背景色など何も指定しなければ、そんなことはない。
次の二つの事に留意して欲しいのですが。
1. HTML での枠線の色は UA の初期実装に依存するということ。
2. 結合ボーダーモデルの場合、立体的に枠線が描画されないこと。
私は Windows環境 + MSIE を使用していて、
ウィンドウの背景色を白に、3Dオブジェクトを薄い灰色に設定しています。
結果的に、背景色が真っ白なのに、枠線の色が薄くて見え難くて困ります。
前景色と枠線の組み合わせは、ある程度のコントラストが必要です。
>よってborder属性だけで足りてプロパティの必要は無い。
結合ボーダーモデルについての理解が足りないと思います。
「border-collapse: collapse」を指定した場合、
その枠線の整形は、CSS の結合ボーダーモデルの範疇になります。
border属性などでは、期待する効果が得られない可能性があります。
http://www.swlab.csce.kyushu-u.ac.jp/man/rec-css2/tables.html#collapsing-borders >見えにくくなるときはCSSでborderを使用すればよし。
「見えにくくなる」のは閲覧者であって、制作者ではありません。
「閲覧者にとって見易い枠線」を設定してくれなくては困ります。
325 :
322:03/07/11 01:06 ID:???
>>324 「普通は他に背景色など*何も*指定しなければ」と言ったぞ。
よって「3Dオブジェクトを薄い灰色に設定」は却下します。
「UA の初期実装に依存する」のはたしかですが
そもそも「UA の初期実装」で見えにくい枠線など、あり得ない。
わざわざ見えにくく初期設定してあるUAなんて、もしあったら糞ブラウザ決定。
>その枠線の整形は、CSS の結合ボーダーモデルの範疇になります。
>border属性などでは、期待する効果が得られない可能性があります
仕様書邦訳のどこにそんなことが書いてありました? 箇所を明示して下さい。
>「見えにくくなる」のは閲覧者であって、制作者ではありません。
「制作者にとって」などと限定句をつけた覚えはありませんが。どうしてそんな悪く曲解するのです?
326 :
299:03/07/11 01:40 ID:???
>>325 324じゃないが。
UAには初期実装にシステムの配色を利用してるものもある。
まさかシステムの配色までデフォルトのままにしろ、なんて言わないよな?
そもそも共通のデフォルトなんてないが。
自分の環境の事しか考えてないから、「制作者にとって」などと言われる事になる。
>>327 すると、システム・カラーを使って、且つCSSオフのブラウザで来る人には
……どうします?
スタイルシート切ってる奴はシステムの配色をデフォルトのままにしてろ、と? まさかね。
独自拡張のbordercolor属性には頼れませんしねえ。
藻前らここはバグ辞典でつよ。
宗教戦争は他でやれ。
いまのバグ辞典はブラウザ別ですな。これはこれで助かっとりますが、
誰か、バグ辞典のプロパティー別索引を作ってくださらんか。きっと重宝しますよ。
奇特な有志の出現を望むや切。
>>328 CSSが無効ならborder-cllapseも無効なのでは…
それにシステムカラーは自分で決めてるんだから
わざわざ制作者が色を決める必要なんて無いのでは?
>>331 いやcollapseでなくて、
>>324は枠線の色を問題にしてたろ?
>わざわざ制作者が色を決める必要なんて無いのでは?
同感。だから
>>327には反対だな。
>>331-332 そのシステムカラーと背景色が競合することも考えて
borderプロパティで色を設定しておいたほうがいいという話じゃないのかな?
【NN4】
1)
border:0 none;だけだとアンカー内画像の線が消せない。
A IMG{border:0 none;}
colorプロパティで背景色と同色を追加指定してやるとよい。
2)
a要素にborderを設定すると、アンカーがクリックできなくなった。
a {border:2px solid #f00;}
対処法:
a:link {border:0px;}を上書きしてやること。border:none;では効かない。
>>328 CSS無効の時は考える必要ないのでは?
CSSが無効ということはブラウザの背景色から何からユーザーの設定になってるわけだから。
つまり、border属性によるtableの枠線の色がシステムカラーに依存する場合があり、
CSSで制作者が設定した背景色とユーザーの設定しているシステムカラーが
似た色でみづらくなる可能性があるから、制作者はborderプロパティで色を
設定したほうがいいってことですか?
>>336 「borderプロパティで色を設定」するなら、border-colorプロパティでいいはずだね?
しかるにOpera7.11では――
body {background-color:white;}
th, td {border-color:black}
<table border="2" style="border-collapse:collapse;">
<tr><td>1</td><td>2</td></tr>
<tr><td>3</td><td>4</td></tr>
</table>
上記の通りborder-colorを指定しただけでは、セルの罫線が消えたままです。
338 :
Name_Not_Found:03/07/13 18:41 ID:l5Vf32jr
body要素に設定したボーダーが閲覧領域全体を囲むように表示される(IE5)
http://cssbug.tripod.co.jp/detail/winie/b036.html これに関係して、疑問があります。
標準準拠モードでスクロールが必要な分量のHTMLファイルに対し
html {border:5px solid red; padding:0;}
body {border:5px solid blue; margin:0;}
とスタイルを指定するとします。
IE6では赤線がウィンドウの四方を囲み、互換モードでのbodyと同様の表示となるが、
NN7.1では標準モードでのbodyと同じくborder-bottomがページの下辺にあるから
スクロールしないと出て来ない。
Opera7.1もNN7に同じ。
これってIE6のは許される解釈差ですか、それとも仕様に反するバグですか。
__∧_∧_
|( ^^ )| <寝るぽ(^^)
|\⌒⌒⌒\
\ |⌒⌒⌒~| 山崎渉
~ ̄ ̄ ̄ ̄
>>340 そこはhtmlではなくbodyをセレクタにしてる。
IEもMozもcaptionをtableの外に放り出して扱ってるっぽいのですが
これって正常なのでしょうか…。
例えば table {margin:auto;} とした場合
trのみセンタリングされcaptionの位置はそのままなので。
>>343 www.w3.org/TR/REC-CSS2/tables.html#q5
346 :
:03/07/19 03:44 ID:???
【IE6】
多重の@importは一定レベル(ベースのcssから数えて5重)より先無視される
test.html
--------
<link rel="stylesheet" type="text/css" href="a.css">
<p>foo</p>
a.css
--------
@import url("b.css");
p {color: red;}
b.css
--------
@import url("c.css");
p {background: blue;}
以下同様に一つずつ違う規則を適用して確かめたところ,
e.css の内容とその先(e.cssの規則と,e.cssからimportされたf.css,…)の
規則が適用されなかった
Mozilla1.4では(少なくともf.cssまでは)適用された(その先は確かめてない)
348 :
Name_Not_Found:03/07/19 08:31 ID:xF+HOzuo
ウインドウズ98SE、ネットスケープ4.75にて。
floatプロパティでブロックを複数個横に並べた場合、clearプロパティが
一番最後にfloatされたブロックの位置に合わせて機能するようです。
<p style="float: left; width: 40%"> <!-- ブロック1(左) -->
テスト1<br />テスト2
</a>
<p style="float: left; width: 40%"> <!-- ブロック2(右) -->
テスト3
</a>
<p style="clear: both; color: #f00"> <!-- ブロック3(クリア) -->
テスト4
</a>
この場合、ブロック2に合わせて廻りこみが解除され、結果ブロック1の
コンテントにブロック3の文字が重なってしまいます。
349 :
348:03/07/19 08:32 ID:xF+HOzuo
閉じタグは</p>の間違いでつ。
351 :
350:03/07/19 08:42 ID:???
間違った。自己訂正。
>
>>346では4階層までいけるみたいだが……。
@importだけだと3階層ですね、たしかに。失礼しました。
>>338 www.swlab.csce.kyushu-u.ac.jp/man/rec-css2/visuren.html#containing-block
>初期包含ブロックの高さはルート要素の'height'プロパティで指定するとよい。
>このプロパティが値'auto'を取る場合、初期包含ブロックの高さは
>文書の内容量に合わせて変化することになる。
に照らせば、ルート要素について算出されるべき高さを無視して
閲覧領域のサイズを適用、というのはbuggyな挙動といえるだろう。
ただ、
www.swlab.csce.kyushu-u.ac.jp/man/rec-css2/visuren.html#q2
>閲覧領域が文書の初期包含ブロックより小さい場合、
>UAはスクロールの仕組みを提供すべきである。
とあり、この一環として行われる挙動、といえばまあ説明つくし
実際それで容認するユーザも多いと思う。
>>338 の CSS にこんな指定を追加してみると解ると思うが
ルート要素近辺については Moz, Opera の挙動も怪しいもんだ。
html { height:10em; width:10em; overflow:scroll; }
body { height:20em; width:20em; }
単純に仕様に従うだけだったら、これらの実装も正しいとは思えない。
html 要素の style 属性は無意味と言うか、そんなものは無いから外せ。
バグ辞典スレにも "html 要素の高さ" なんて言ってる馬鹿がいるけど、
実際に CSS が適用されるのは body 要素とそれに含まれるものだけ。
>>353 コ ピ ペ う ざ い
嘘でも100回書けば真実になるを狙ってるのでつか
てかIEだけが彼の真実なんだろね。
IEでも
>>338の通り、html要素にスタイルは適用されるんだけどね。
>>357 テーブルセルにおけるwidth,heightは最小幅、最小高。
よってoverflowなど無意味。
例外はtable-layout:fixedのとき。
お前の脳内解釈やIEの仕様なんてどうでもいいわけで。
>>358 table-layout:fixed;にしても無意味だったけど?
<table border=1 style="height:2em; table-layout:fixed;">
<tr>
<td>000000000</td>
<td style="overflow:scroll;">1<br>2<br>3<br>4<br>5<br>6<br></td>
</tr>
</table>
だからtable-layout:fixedにしてもoverflow無効なのはバグ。
table-layout:autoでoverflow無効なのは仕様通り。
>>359 CSS2仕様書嫁
そもそも
><td><div style="overflow:scroll;">ほげほげ</div></td>
にしても、スクロールバーが出るだけでスクロールできない(Mozilla/Opera7)んだから
無意味なんだけどね。
IE6 SP1 Netscape7
<Head>
<Style><!-- body{ line-height: 125%; } --></Style>
</Head>
という感じで line-height を指定すると
ボックスにパディングを設定しても無視される。
>>362 それはdivにheightを設定してないから。でもtdにheightを指定してもやはりoverflowは効かない。
>>363 そんなことぁないだろ。
>>363 再現できません。何かの誤解では?
以下をWinIE6で確認。
<style><!-- body{line-height:125%;} --></style>
<div style="background:yellow; padding:50px;">パディング効いてます</div>
<style type="text/css">
ってなってないと落ち着かないな
依存症患者かよ
370 :
_:03/07/30 08:08 ID:???
(今日の更新分です)
>>347 NN010と012を修正。
>>348 NN024に追加。
>>357 1. の内容をOpera006に追加。
2. の現象は再現できていません……
>>363 とりあえず保留。
>>369 MacIE049に追加。
373 :
Name_Not_Found:03/08/01 00:38 ID:LJ6uTMsH
>>371 漏れ>357の症状を出した香具師なんだが、どうやって再現するか忘れたよ(;´Д`)スンマソ
>>361 仕様書の何処にそんな事が書いてあるんだ?
>>375 CSS2仕様書の Section 17.5.2 あたりを読め。
(^^)
http://pc2.2ch.net/test/read.cgi/hp/1057860130/657-662 WinXP , Opera7.11 を使用しています。
<form>
<fieldset>
</fieldset>
<fieldset>
</fieldset>
</form>
というように、 form 要素の中に fieldset 要素を2つ配置しています。
そして CSS は
fieldset{
float:left;
width:40%;
margin:0.5em;
}
と記述して、2つの fieldsetが横に並ぶようにしていますが、
Oepra だけ実現できません。(IE や Mozilla はできました。)
私の記述が何かおかしいのでしょうか?それとも Opera のバグでしょうか?
<div> で <fieldset> 〜 </fieldset> を包括するとうまくいきました。
>>357-361 table-layout は表とセルの*幅*の算出に関するアルゴリズム指定だ。
高さの算出については、 CSS2-17.5.3 に
> CSS2では、セル要素の'height'の値と、内容を収めるのに必要な最小限の高さ
>(以下これをMINと書き表す)のうち、大きい方をセルボックスの高さとする。
とある。 CSS2では table-layout が auto だろうが fixed だろうが
高さ方向のはみ出しは絶対に発生しない。
なので、CSS2 仕様上でセルの overflow:scroll が有効になると期待できるのは
table-layout:fixed の場合の幅方向のはみ出しについてのみだと思う。
auto の場合は幅の算出にどんなアルゴリズムを使ってもいいはずなので
結果がどうだろうと仕様の適用外でバグとも仕様通りともいえない。
>>360 表要素の width が auto の場合は table-layout: fixed でも
自動レイアウトアルゴリズムを使用する。[CSS2-17.5.2]
table-layoutってWinのIEしか対応してないんだからmozillaもoperaも関係ないと思うんだけど。
>382
釣りか?逆だぞ。
>>383 釣りか?テキストブラウザは無視ですか。
css/dhtmlスレだから放置ですね・・・
>>384 おいおい、
>>382の言ってるtable-layoutってCSSのプロパティのことだぞ…
まあ釣りなんでしょうな。
釣れますか?
(⌒V⌒)
│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
↑デバッグしたい
MDNのCSS本にも、インプレスのCSS本にもtable-layoutはWinIEのみ対応で、
macIEも値スケも非対応ってあるけど?
391 :
390:03/08/16 19:49 ID:???
書き忘れたけど
2冊とも古い本じゃないぞ。operaとかネスケ7も載ってる。
>>391 本の名前あげないのは何でだろう。
言ってることは正しいが。
394 :
393:03/08/16 21:06 ID:???
Netscape 7 で試したら、固定表レイアウトになったぞ。
「fixed」にした方が、明らかにレンダリング速度も速かった。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<title>無題ドキュメント</title>
<style type="text/css">
<!--
body {
width: 400px;
}
-->
</style>
</head>
<body>
あああああああああああああああああああああああああああああああああああああああああああああ
</body>
</html>
bodyに対して横幅を定義したんですがIEでは反映されないみたいです
バグなのでしょうか
そういうことしたいならjavascriptだけど。
それを有効にするのは何か無理な気がする
400 :
Name_Not_Found:03/08/20 01:56 ID:kdGPsTKu
【Netscape7.1(Win)】
多重フロートで、正しかるべき位置(?)より下にずれて配置される。
下記の例で確認した。WinIE6やOpera7と見比べると、
NN7のみimg.Rightの位置が一段下がってしまって、「右1」のすぐ横に来ない。
h3の直後の画像でclearしてるのが原因らしいが、それならば右1・右2も下がるべきはず。
h3, h4 {margin:0;}
.leftcol {float:left; width:33%;}
.rightcol {margin:0 0 0 35%;}
img.Right {float:right; margin:0; width:145px;}
.clear {clear:both;}
img {text-align:center; background:red;}
<h3 class="leftcol">左フロート1</h3>
<img src="./images.gif" width="120" height="50" alt="left1" class="clear leftcol">
<div class="rightcol">
<img class="Right" src="./images/bff2003.jpg" width="142" height="50" alt="right2">
<h4>右1</h4>
</div>
<hr class="clear">
<h3 class="leftcol">左フロート2</h3>
<img src="./images.gif" width="120" height="50" alt="left2" class="clear leftcol">
<div class="rightcol">
<h4>右2</h4>
</div>
cf.
http://www.ne.jp/asahi/anarchy/saluton/index.html もしかしたらNN7のみが正しくIEやOperaの表示がバグなのか?
類似バグ
http://cssbug.tripod.co.jp/detail/mozilla/b059.html
>>400 ネスケの方が正しい動作だと思われ。
CSS2仕様書9.5.1の浮動体の規則5より、right2の上辺はleft1の上辺よりも下に来なければならない。
しかし、右1と親ボックスである<div class="rightcol">はブロックボックスなので、
通常フローに従い配置されている。
すると親ボックスは左1の横に配置され、その最上部に右1が配置されると言う
>>400の結果がえられる。
>>400 clearプロパティはブロックレベル要素にしか適用できないから
>>400のソースのimg要素は<div>で括って
<div class="clear leftcol">
<img src="./images.gif" width="120" height="50" alt="left1">
</div>
とかすべきでしたな。ま、それでやっても同じバグが起るけどね。
>>401 >CSS2仕様書9.5.1の浮動体の規則5より
http://www.swlab.csce.kyushu-u.ac.jp/man/rec-css2/visuren.html#float-position 5. 浮動ボックスの外上辺は、ソース文書内でそれ以前に出現する要素が生成する、ブロックボックスあるいは浮動ボックスの外上辺より上にきてはならない。
ふむふむ。
>しかし、右1と親ボックスである<div class="rightcol">はブロックボックスなので、
>通常フローに従い配置されている。
ううむ?
画像left1やleft2でclearしてるのに、div.rightcolは左1・左2と水平横並びでいいのか?
横並びがleft1やleft2の上辺と揃って配置されるんならわかるが。
例を出せば、下のソースで「右」は「左」のすぐ右にくるわけないよね? だのにナゼ?
<div style="float:left;width:2em;">左</div>
<div style="clear:left">clear</div>
<div style="margin-left:3em;">右</div>
まあ、どっちにしろMozillaかIE・Operaかのバグではあるか。
403 :
402:03/08/20 03:24 ID:???
例としてはこっちが適切だったかな。
<div style="/*float:left;*/ width:2em;">左</div>
<div style="clear:left; float:left; width:3em;">clear</div>
<div style="margin-left:3em;">右</div>
つまり最初のdivのfloatはclearで無効になってるはずなのに、ってことです。
>>400の例はもっと単純化したソースで実験できる。
div {border:1px solid red;}
<div style="float:left;width:10em;">左</div>
<div style="clear:left; float:left; width:5em;">clear</div>
<div style="margin-left:11em;">
<div style="float:right;width:2em;">右2</div>
右1
</div>
<hr style="clear:both;">
これで、右1と右2が真横に並ぶかどうかの差が問題だ。
>>403 clearの意味を履き違えてる。
clear:leftなら
「指定された要素の左辺がそれ以前に出現する左浮動の右辺に隣接してはいけない。」
ことを示しているだけで、前に現れた浮動を完全に取り消しているわけではない。
そして、浮動体は通常フローに影響を与えないので、left1やleft2はがどこに配置されようと
div.rightcolの配置には影響を与えない。
>>405 これだと、通常フローはfloat1の右隣に流し込まれないんだよね。
二番目のdivにclearと共にfloatを指定するかどうかの差で。
<div style="float:left;width:10em; border:1px solid red;">float1</div>
<div style="clear:left; /*float:left;*/ width:5em;">clear only</div>
<div style="margin-left:11em; border:1px solid blue;">
通常フロー
</div>
<hr style="clear:both;">
ううん。わかる気もするんだけど、何だか釈然としない……。
【Opera 6/7】
iframeにz-indexプロパティが効かない。iframeは常に一番上?
<html>
<head>
<style type="text/css">
<!--
div, iframe {
position:absolute;
top:0;
left:0;
width:100px;
height:100px;
}
div {z-index:2;}
iframe {z-index:1;}
-->
</style>
</head>
<body>
<div>あいうえお</div>
<iframe src="
http://www.yahoo.co.jp/"></iframe>
</body>
</html>
409 :
Name_Not_Found:03/08/23 00:59 ID:F+pPWwnP
age
>>410 OperaってWindows版とMac版でレンダリングが異なるんだ……困った奴だナァ。
マアSafariに押されてあまり利用者も増えまいから、いいか。ver.7が出るかも怪しいし。
IEもネスケもWINとMACじゃ違わなかった?
違うよ。
>>411 というかWinOperaはWinIEの挙動にあわせて意図的に
仕様から逸脱したレンダリングをしてると思われ。
415 :
Name_Not_Found:03/08/25 16:42 ID:6oIkq+aB
Gecko エンジン使用のブラウザで、
margin-left:auto; margin-right:auto; width:500px;
ってやって真ん中寄せにすると、ウィンドウ幅が
500px を切ったときに横スクロールバーが出ますが、
そのスクロールバーを動かしても左端に到達できません。
こんな感じ。
http://up.isp.2ch.net/up/5463c570586b.html これってがいしゅつですかね?
Mozilla/5.0 (Windows; U; Windows NT 5.0; ja-JP; rv:1.0.2) Gecko/20021120 Netscape/7.01
Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; ja-JP; rv:1.4) Gecko/20030624 Netscape/7.1
Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.5a) Gecko/20030728 Mozilla Firebird/0.6.1
Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.4) Gecko/20030624 ← Camino
で試しました。
# /* CSS・スタイルシート質問スレッド【22】 */
# にも同内容の質問を書きました。
>>415 それで正しい。IEやOperaが不正。
直感的には、背景画像の水平方向の真中寄せをイメージすればよろしいかと。
margin-right(left):auto;は、widthの単位を考えて、慎重に用いられなければならない。
これは、半年ほど前、腹話術師の初心者板でも書いたが、当然ながら反応はなかった。
W3CのCSSアーカイブで、イアンヒクシー青年も指摘してたが、理解してもらえてなかった。
これに関しては、正しい挙動が寧ろ迷惑なので、OperaやIEは、絶対に正しく実装しないだろう。
417 :
415:03/08/26 02:05 ID:???
>>416 自分もまっとうな挙動なのは理解できるのですが、腑に落ちない点はひとつ。
なぜ、右端には到達できるのかと。ウィンドウを左から縮めていったときに、
右方向にずぶずぶ言ってしまうのなら、まだわからないでもないですが。
> 正しい挙動が寧ろ迷惑
なんか、手段が目的を超えちゃってるよなあ、ってな気もします。
というわけで、涙をこらえて無意味な親要素(table)をつくりました。
心が痛いです。
418 :
415:03/08/26 02:09 ID:???
あ、コンクエラ(safari)も「不正」な対応ですた。補足です。
419 :
416:03/08/26 08:31 ID:???
417への回答にならなくて申し訳ないが、一応、回避策は提示されている。
スレ
lists.w3.org/Archives/Public/www-style/2003Feb/0280.html
仕様書作成者の一人が述べる要点
lists.w3.org/Archives/Public/www-style/2003Feb/0285.html
仕様書作成者の一人が提案する回避策
lists.w3.org/Archives/Public/www-style/2003Feb/0288.html
この0285.htmlにあるように、margin-right(left) : auto なのに、左が0より小さい
マージンを取らずに、右だけが負のマージンを取るというIEやOperaの実装は、
CSS2.1-10.3.3
If both 'margin-left' and 'margin-right' are 'auto', their computed values are equal.
に反するから、不正、となる。
また、少なくとも、border-widthに%は無いから、0288.htmlにある回避策は、
問題の起こらない限りは、併用されるべき。
max-width:100% ですか。なるほど、思いつかなかった。
まとめサイトとこのスレでは検索したんだけど発見できなかったので報告。
<table><tr><th style="font-weight:normal;">test</th></tr></table>
WinのGecko・IE6・Opera7・NN4.08、MacのIE5ではちゃんと普通の幅で表示されるんだけどMacのNN4.7だけboldのままです。
というか回避方法あったら知りたいです。
<table><tr><td title="header">test</td></tr></table>
<table><tr><th><span style="font-weight:normal;">test</span></th></tr></table>はどうかな。
UTF-8のHTMLで外部からlink要素で読み込んだShift_JISのCSSに
/* 定 */
というコメントがあると、それ以降のスタイルが無視されるんだけど、バグ?
charsetとかちゃんと指定してるんだけど。
Firebirdだとちゃんと表示されるみたい。
>425
どのブラウザで?
【Netscape7.1(Win)】
アンカーのlink疑似要素のfont-weightを600以上に太くすると、
アンカーの文字列の右端(折返しされる時はその右端)の文字が缺けてしまふことがある。
全部がなるわけでない、アンカーに或る程度の長さが必要らしいが、それ以上の再現條件は不明。
例
A:link {font-weight: 600;}
<p><a href="0.htm">あいうえおあいうえおあいうえおあいうえおあいうえおあいうえおあいうえおあいうえおあいうえおあいうえお</a><small>(03-09-03 Up)</small></p>
428 :
427:03/09/03 23:50 ID:???
次の指定を削ったら、バグ表示は起きなくなった。
BODY{font-family:
"MS ゴシック","HGゴシックM", 'Osaka−UI', Gothic, sans-serif;
}
どうも和文の等幅フォントがいけないらしい。英字フォントの指定だけだと起きない。
ほかにも文字列の長さや何かが複合してバグるみたいだが……。
line-heightの値によってはマージンが指定どおりの値にならない(N7)
http://cssbug.at.infoseek.co.jp/detail/mozilla/b037.html これ、NS7.1で再現した。マージンを0にしても隙間が空く。
いままで大丈夫だったのにpadding-right:5px;を入れたら急に発現した。
なぜかpadding-right:2px;までならバグは生じない。
html, body {line-height:1.2;}を1.1か1.3にすると回避できた。
そもそも何で左右パディングなのに上下マージンに影響するのか。
Mozillaの糞ったれメ。
430 :
425:03/09/04 02:05 ID:???
>>426 書き忘れた。IE6.0sp1
どうもコメントが、「定」という字で終わってるとそうなるみたいなんだけど。
433 :
Name_Not_Found:03/09/10 14:01 ID:y+a9aZMI
こんなスレで質問ですが・・・
IEでCSSを用いてテーブルをセンタリングするにはどうしたらよいのでしょうか?
と単純な質問なのですが・・・
対象バージョンは、IE4、IE5.0?です。
<div style="text-align: center"><table><tr><td>ほにゃらら</td></tr></table>
がききません。汗
条件
・HTML 4.01 Strictで書かなければならない
・上記のとおり、<CENTER>、<DIV align="center">は使用禁止といわれてる。
・既にネスケモジラ&標準CSS用にmargin-left:auto margin-right:auto が入ってる
#対象OSはWinXP、Win2000、WinNT4.0、WinNT3.51、Win3.1・・・&FreeBSD
全てのOSで正しく見れなければならない。
WinOSはIE以外のブラウザは禁止してる会社です。(社内プロクシでIE以外をはじいてるらしい)
#対象ブラウザは下記のとおりらしい
WinXP=IE6 Win2000=IE5.01SP2 WinNT4.0 IE4.?? WinNT3.51&Win3.1 IE5?
FreeBSD=ネスケ7&Opera7
仕事の調べ物を2ちゃんで済まそうなんて…
>>434 よく見なされ。margin:autoが入ってると書いてあるでないの。
で、
>>433 よ。
まさか、</div>が抜けてるとか、そんなことはないよね?
効くはずのプロパティーが効かないってのは、バグ報告になるのでは?
>>437
(´-`).。oO(なんで質問スレに行かないんだろう…)
>>436 スレ違いだし、あっちのFAQのリンク先を全部見れば分かる
であろう話なんだがなね。
>438も単に433の記述がまずいであろう話をいちいちUAのバグにしないように。
まぁ、divのtext-alignで内包するblock level要素を
センタリングすること自体、IE4,IE5のバグの利用ではあるんだけど。
http://members.at.infoseek.co.jp/cssbug/detail/winie/b035.html で、バグの利用がうまくいかないのは、このスレで扱う問題なのかね?
>>438 なんにしても、続きは質問スレでやってくれ。こっちはあとは完全スルー。
>>433はあっちで再質問するとしたら、該当箇所について略さずに全部書いとけ。
この手のことは再現する最小のコードを書いて、問題を切り分けようとすれば
自然にどこに原因があるか分かるものなのだが。
仕事でやっているくせにその程度のことも(ry
>>433みたいのに仕事依頼したところがかわいそうだ。
>>440 >まぁ、divのtext-alignで内包するblock level要素を
>センタリングすること自体、IE4,IE5のバグの利用ではあるんだけど。
バグではなく「仕樣」です(笑)。少なくともその開発当時の理解では、ね。
>>433は、センタリングするブロックレベル要素にwidthを指定してないんでないかい?
width:auto=100%なら、いくら中央寄せしても見かけは一緒になるわな。
>>441 そもそもIE以外のリファラを弾く会社だぞ?
444 :
ばぐみっけ:03/09/12 13:10 ID:S85p0vAC
CSSのバグとは言えないかもしれませんが、発見したので投稿しておきます。
JavaScript でIE6は
document.body.clientHeight (またはclientWidth) の値が標準モードと互換モードで違うようです。
互換モードの場合はMozillaなどの
window.innerHeight (またはinnerWidth) と同じようですが、
標準モードではCSSで指定したmargin や スクロールバーが出現した場合に値が大きく影響を受けるようです。
IE6.0 SP1
>>444 標準モードでは
document.documentElement.clientHeight
だったと思うぞ。
どっちにしろスレ違いな上、バグではない。
>>445 >WinOSはIE以外のブラウザは禁止してる会社です。
漏れの読解力がないだけだったらスマソ
別のOSでは別のブラウザOKなのか。
>>443 これからはそんなの当たり前。
IE以外でも見れるようにと、くだらない事に
金をかける会社の方がむしろどうかしている。
俺も会った事ある...リファラを勘違いしているバグった椰子。
# 「リファラのUAで分岐しる」とか言うんだよそいつw
おもしろくにあい
ボックスの幅を明示しないとか…
>font-size:1.5em;とfont-size:100%;とで
↓
font-size:1.5em;とfont-size:150%;とで
>>456 UA側の設定による文字サイズの変動幅がどうだろうが
それをバグと言うだけの根拠はないように思う。
有名だけど既出ではないっぽい?のでバグとして整理するなら
em 単位だと文字サイズ設定で文字の大小する幅が急激になること、ではなく
文字サイズ設定次第で em, ex 単位が正しい倍率に設定されなくなること、だろう。
こんなコードで文字サイズ中以外にしてみ。
% 単位と比較するまでもなく em 単位の実装がおかしいことが解る。
<p style="font-size:1em">ABC
<span style="font-size:1em">DEF
<span style="font-size:1em">GHI
</span></span></p>
# 祖先要素に % 指定や絶対値指定があるとこの問題は起こらないようだ。
http://cssbug.at.infoseek.co.jp/detail/mozilla/b037.html ↑これと似て、マージンが0にできない場合がオペラにも。再現条件が絞りきれないが……
【Opera7.11】
<div id="row1">〜〜〜<hr id="half"></div>
<div id="row2">〜〜〜<hr></div>
<div id="row3">〜〜〜</div>
hr#half {margin-bottom:0;}と指定しないと、row1とrow2の間になぜか隙間が空く。
row2とrow3の間は同樣にmargin:0;を指定してやってもどうしても隙間が空くが――
基本シート中の A:hover {border:0 none;} の指定を削るとバグは起きない。
同じく hr {margin:16px 0 5px auto;} このmargin-bottom指定を0にすると、バグは起きない。
row3の中のa要素をhover状態にすると、隙間は消えるが、row2の中のa要素に触れるとまた空く。
わけがわかりません。
実例
http://www.ne.jp/asahi/anarchy/saluton/index.html
マルチですが一応CSS質問スレから誘導された。確認してみようと思い
こことと同じく指摘された下記サイトでちらりと見てみて
http://cssbug.at.infoseek.co.jp/detail/nn4x.html アーこのバグかな?と思うのは[上の3-36?]有ったけど
自分のとちょっと違うような気もする。
同症状の出た人がいたら解決できるかと思い書きました。
以下症状です。----
Mac OSX→クラシック(9起動でも)NN4.7で
<span class="A">あああああああ</span>のサイズが激しくバグるときがある
具体的にはスクロールすると下から現れる文字がどんどんでかくなる
またページによってサイズが1段回大きくなる箇所が有るときがある。
とするとそのページのコーディングに問題あるはずなんだが分からん。
正常なところと同じように作ってるのに。
"A"のフォントサイズは95%行間130%
(サイズを変更しても同一ページにて同一症状だった)
しかしclass="B"(フォントサイズ86%行間130%)に異常はなかった
そして太字設定<b class="Abold">ううううう</b> の場合のサイズはOK
bodyでの文字指定は特になし(css は外部指定で)
これがNN4XのCSSの不具合っていう奴?
------
報告ならここ。確認なら上記要約サイトを紹介されたのですが
どちらか自分でもハッキリしません。スレチガイでしたらすまんです。
>>461 CSSとテーブル混在だしspanしか使わない廚。
基本制作はGolive。後々突っ込まれる前に一応。
でもこれで旨くいってる奴もあるのは確か。
<table width="530" border="0" cellspacing="0" cellpadding="0">
<tr><td valign="top"><img src=".xxx.jpg" alt=""
width="xxx" height="xxx" align="right" border="0" hspace="10" vspace="5">
<b class="BBOLD">ここはOK<br><br></b>
<span class="B">ここが駄目駄目<br><br>
ここも駄目駄目<br></span>
<b class="BBOLD">だがここはOK</b>
<br>
<span class="A">違うクラスだけど駄目<br>
駄目駄目<br>以下駄目駄目
<br>めーる<a href="xxx@xxxx">xxx@xxxxx</a><br></span>
</td></tr></table>
↑こんな感じ。でも<b class="B(Aも)BOLD">はいいみたい。
>>461 > インライン・スタイルシートでないとバグにならない?
や、外部スタイルシートでも確認できた。
うちの環境では1emが「大」で約117%、 「最大」では約133% くらいの倍率になる。
逆に「小」だと約87%、「最小」で約68%。
文字サイズ設定が「中」以外だと、1em=100% にならない。
465 :
461:03/09/27 15:03 ID:???
466 :
461:03/09/27 15:05 ID:???
ゴメン、間違った。忘れて。
http://pc2.2ch.net/test/read.cgi/hp/1064502391/36-55 Netscape7.02の場合、overflow: hidden の場合は問題ないのですが、
autoやscrollを設定すると、ウィンドウからはみ出した部分にあるリンクが機能しないんです。
はみ出した部分にあるリンクをクリックすると、要素の頭に移動するだけでリンク先には移動しません。
Netscape自体のウィンドウサイズを縦800ピクセルくらいにして、以下を表示させた場合、
リンクは機能しません。
<div class="example">
<div style="overflow:auto; height:1200px; border:2px solid blue; padding: 1000px 0px 0px 0px;">
<p>1行目</p>
<p>↓</p><p>↓</p><p>↓</p><p>↓</p><p>↓</p>
<p><a href="
http://pc2.2ch.net/hp/">このリンクが機能するか?</a></p>
</div>
</div>
ちゃんとリンクは機能した。
Win98SE・Netscape7.1にて確認。
7.02以前の問題みたいですね。
一応レスなかったけど自力で解決した?かな。だから報告。
3-36に有るようにしてみた。
<b class="BBold">元からOK</b><span class="B">だめだめだった。</span>
↓
<b class="BBold">元からOK</b>
<font class="B">直った</font>
とソースで改行&<span>やめて<font>or<td>してみたら旨く表示された。疲れた。
Goliveってひどいソースを吐くんだねぇ。
>>463 fontタグ使用する位ならCSSを使ってはいかんよ。一から勉強した方がいい。
>>468
>>469 あ。そうそう。訂正ありがと。
>>470 一から勉強する気にはならんけど例えば
>>463どの辺がそんなにひどいソースなの?
改行の問題は漏れが後から<br>横槍でぶち込んだり
<span>の上から<b>指定強引にしたリしたせいもあるやも知れん。
よくは分からんのだけど。自分としては要素は何でもイイから
classをぶち込むのに分かりやすく修正が楽なものが有ればイイかなと。
ちなみに<font>はサイズやその他の値は入れてない空<font>です。
Goliveはかなり気ぃ使わないと変なソースなるね。
お手軽ウェイジグエディタってもんでもないし。
パッと見で間違いじゃあないけど変、ってとこ。
alt内が空、b内にbrでそのままb閉じ
>>471 ありがと。空<alt>なんてなんででるんだろな。書き出しても出てた。
<b><br></b>は自分の操作の雑さ加減がそのまま出たんだろうと思う。
NN3のComporser以来制作にはGoLiveしか使ってないから
ソースなんて今回のようにトラブル時に確認する程度だったけど
今回の件でcssを勉強し直す気にはならんけど
自分の雑な操作がソースに反映されちゃうことの重大さを認識出来た。
475 :
473:03/09/28 01:36 ID:???
>>474 いいサイトをありがと!自分で仕様書読みつつ独自に
論法を学ぶのはしんどいが今の自分には分かりやすかった。
しかし自分でやってて恥ずかしいがweb制作ってすげーなぁ
さっき作り終えたサイトに反映させるのは
少し時間がかかりそうだが<b>と<font>は少なくとも論理タグに変更してみる。
それからさっきレス番間違えた。473は
>>472へのレス。
476 :
Name_Not_Found:03/09/30 14:04 ID:lYn8S76M
1〜2か月前に別スレにあった内容だけど、ここでは未報告ですよね。↓
Safari 1.0 で、<table> に <caption> があると <col> に指定したスタイル
全てが無視される。
<table style="width: 100%; table-layout: fixed">
<caption>テスト</caption>
<col style="width: 2em"><col style="background: #ff6">
<tr><td>あ<td>い
</table>
↑ <caption> 要素をなくすと <col> のスタイルが効きます。
481 :
473:03/10/03 00:44 ID:???
>>474 とりあえず
<b class="ABOLD">→<strong class="ABOLD">
<font class="A">→<span(またはpまたはtd)class="A">
に検索置換で安易にごっそり変えたんだけど気になるところが有って
<b class="ABOLD">→<strong class="ABOLD">
<strong class="ABOLD">→<strong><span class="ABOLD">
ってどっちがいいんすか?
482 :
473:03/10/03 00:46 ID:???
下3行間違えた
<b class="ABOLD">→<strong class="ABOLD">
<strong class="ABOLD">→<strong><span class="ABOLD">
ってどっちがいいんすか?
↓
<strong class="ABOLD">と<strong><span class="ABOLD">
ってどっちがいいんすか?
すません。
<p>
<em>強調文</em>
文章文章文章文章
</p>
p {
text-indent:1em;
}
em {
display:block;
}
WinIE6でこう書くと、emの後で改行されて、
その後の「文章文章文章」にもインデントが入ります。
>484
当たり前。
em要素はdisplay:block;なので改行されて当然。
p要素にはブロック要素を内包出来ないので
IEのパーサは
<p></p>
<em>強調文</em>
<p>文章文章</p>
と解釈する。 よって「文章文章」の部分にもインデントが入る。
>>485 NetscapeやOperaではインデントが入らなかったように思うのだけど、
IEの描画が正しいの?
>>485 違うだろ。CSSが元HTMLの構造を書き換えちゃ駄目だろ。
<p>foo<em>bar</em>baz</p>
というHTMLに
>>484のCSSを適用したとき
fooとbazは匿名ブロックとして、barはemのブロックとして扱われるのが正当だろ。
HTMLで、pの中にブロック要素が許されているかいないかは関係ない。
>486のNetscapeやOperaの挙動が正しいように思う。
<p>hogehoge<br>hagehage</p>
これでpにインデント指定して、
改行されてもインデント入ったらpaddingと変わらんな。
まあ
>>485 は明らかにブロック要素と display:block の要素を混同しているので論外だが
http://www.w3.org/TR/CSS2/text.html#indentation-prop > More precisely, it specifies the indentation of the first box that flows into the block's first line box.
"the block's first line box" ってのが em 内部の行ボックスなのか
「文章文章文章」の行ボックスなのかちょっと不明瞭な文だなとは思う。
自分の文法間違いからのバグだけどいいでしょうか・・
<table border><td style="background-color:#dddddd;">あああ</td><td>あああ</td></tr></table>
のようにテーブルに<tr>を付け忘れると、ネスケ4では</tr>までbackground-color要素が継承されてしまいます。
IE6・NN7では問題ありません。
>>491 >IE6・NN7では問題ありません。
…それは君の意図どおりになるのがバグなの?ならないのがバグなの?
エラーを含むソースが期待した結果にならないのは
むしろ理に適ってるんじゃないのか?
処理系に均一な挙動を期待するのは、ソースが正常であることが大前提。
異常なソースに対してUA間の処理結果にムラがあるのは当たり前。
こんな破損データ食わせるとこのUAはこんな風にバグるよ、
という主旨のスレなら、それでもいいのかもしれないが。
ここって、そういうスレなのか?
"background-color要素"なんてないし。
494 :
Name_Not_Found:03/10/03 20:40 ID:rDuWd9aa
text-indentは継承される。
継承は匿名ブロックに対しても起こる。
よってIEが正しい。
つうことはネスケとオペラのバグ?検証してないけど。
W3CのMLでどうなるのが正しい挙動なのか聞いてみたい気分。
Gecko & Opera の挙動がバグであるなら、開発元にフィードバックしたい気分。
Safari 1.0 で、table-layout: fixed の状態で、各列幅に、具体的な長さ、
パーセント、auto を混在して使うとパーセント指定した幅がやけに狭く
なります。
<table style="width: 100%; table-layout: fixed">
<tr>
<td style="background: #ccf; width: 10em">x
<td style="background: #ccf; width: auto">y
<td style="background: #ccf; width: 50%">z
</table>
上記は table-layout: fixed の指定を除くと正常に表示されます。
また、table-layout: fixed を付けた状態でも、列幅をパーセントのみで
指定とか、具体的な長さと auto のみで指定するなら問題ありません。
これらを混在して指定するとパーセントの計算が変です。
前366さんへ
>>467はNetscape7.02でバグが確認されなかったのですか?
同じソースでIE6とその他(opera7、n7、firebrid0.6)で表示が違えば,
どちらかにバグが潜んでると考えていいんですか?
まず自分の書いたものを疑う。
どの挙動も仕様の範囲内(または仕様の適用外)である場合もある。
それから、個々の機能の対応状況により
結果として違いか出ることもあるので注意が必要。
(例えば、IEが隣接セレクタに未対応なのは通常はバグとは言われない)
508 :
505:03/10/09 01:10 ID:???
>>506 確かにその通りですね。
こちらでよく言われる「最小限のソースで問題を切り分けて原因を探れ」というのをやっていたんですが
集中力が持たなくて原因が突き止められませんでした。
ソースの不備なのか、ブラウザのバグなのか訳がわからなくなってしまいました。
もう一度見直すかなぁ。
>>507 なるほど。バグでなく実装の違いから出る挙動の差ということですね。
よっしゃバグだな、いつも世話になってるこのスレに報告してやる、と思って調子に乗ってたんですが
まだまだ自分には精進が必要のようです。
(挙動の違いは別の方法で対処したので、まだ原因は不明なんです・・)
スレタイにDHTMLってあるけど、JavaScriptとかも書いて
510 :
509:03/10/09 06:05 ID:???
スレタイにDHTMLってあるけど、JavaScriptとかも書いていいんですか?
JavaScriptは専門のスレがあるからそっちで。
512 :
509:03/10/09 07:24 ID:???
>>511 どこにありますか?
質問スレしか見つかりませんでした。
あとスレタイのDHTMLとはなんですか?
>>511 JSスレは質問スレだからバグの話題はこっちでもいいような。
実際DOM関連のバグはこのスレで過去にいくつか挙がってる。
まあCSS/DOM/JavaScriptのバグはそれぞれ棲み分けの必要な部分ではあるけど
JavaScriptのバグはこのスレで扱わないんだったら
DHTMLなんて紛らわしい文句はスレタイから外した方がいい。
HTMLのバグは何処行けば見られる?
IE6のoptgroupとか。
>>508 わかったところ迄でいいから、擧動の差を報告してくれないか?
こちらのスレッドでバグか否かを突き止められるかもしれないし。
>>514 optgroupのバグって? 未実装とかでなく?
>>512-513 JavaScript単独ではなくCSSとも組み合せなければDHTMLとは呼べないのでは。
>>497 >>484 text-indent のブロック表示ボックスの「最初の」インラインブロックがインデントされる。
div { display: block; }
.para { text-indent: 1em; }
<div class="para"><div>XXX</div> xxx xxx</div>
<div class="para">XXX <div>XXX</div> xxx</div>
子divに、text-indentは継承され、そして、適用される。
正しい表示は、
[1em]XXX
xxx xxx
[1em]XXX
[1em]XXX
xxx
という感じ。XXXが「最初の」インラインブロック。
前者は一つのインラインブロックを親子のdivが「共有」している。
後者は、親divにとっては2番目でも、子divにとっては最初。
2.1WDの「継承に注意」の但し書きはこの後者のようなことを予測しておくように、ということ。
もう既に言うまでも無いが、WinIE が不正。
s/インラインブロック/line box/g
>>518 >インラインブロック
インラインボックスのtypoかとは思うが、仕様は
>>490 のとおり
"the block's first line box" としているだけで、
first line box が子孫ブロック要素の生成する line box を数に入れるのかどうか
また block が anonymous block を含むのか否かハッキリしない。
WinIEが不正、というだけの根拠には欠けるかなーというのが
漏れの見解。というか漏れの語学力/読解力の限界。
その辺の決定的な記述部分があるならポインタきぼんぬ。
522 :
509:03/10/10 05:52 ID:???
>>517 そんなことはどうでもいいからJavaScriptのバグはどこに書けばいいか教えてくださいよ
523 :
509:03/10/10 05:57 ID:???
525 :
509:03/10/10 12:21 ID:???
528 :
Name_Not_Found:03/10/11 10:57 ID:+nvmuHYc
Opera7で、固定CSS+優先CSSに複数の代替CSSを設定すると、代替を含む全てのCSSが読み込まれる?
XHTML1.1で作成しました。
<!-- ソース -->
<link rel="STYLESHEET" type="css/text" href="kotei.css" />
<link rel="STYLESHEET" type="css/text" href="yusen.css" title="優先" />
<link rel="STYLESHEET ALTERNATE" type="css/text" href="kotei.css" title="代替A" />
<link rel="STYLESHEET ALTERNATE" type="css/text" href="kotei.css" title="代替B" />
<!-- ソース終了 -->
こんな感じにしたら、全てのCSSが一斉に適用されました。(作成者モードにしてます)
【CSSバグリスト@CSSバグ辞典スレッド】を見て、載ってなかったようなので投稿します。
何か書き足りないことなどあったらゴメンなさい。
正しい挙動じゃないの
>>528 "css/text" じゃなくて "text/css" でしょ。
代替Aも代替Bも kotei.css になってるのは故意?過失?
書き足りないというか、正確に書いて欲しいと思う。
531 :
528:03/10/11 11:32 ID:+nvmuHYc
すみません。528間違ってました。
<!-- ソース -->
<link rel="STYLESHEET" type="text/css" href="kotei.css" />
<link rel="STYLESHEET" type="text/css" href="yusen.css" title="優先" />
<link rel="STYLESHEET ALTERNATE" type="css/text" href="A.css" title="代替A" />
<link rel="STYLESHEET ALTERNATE" type="css/text" href="B.css" title="代替B" />
<!-- ソース終了 -->
です。
534 :
528:03/10/11 18:07 ID:+nvmuHYc
>User agents must not apply alternate style sheets with a different style name.
http://www.w3.org/TR/1999/REC-html401-19991224/present/styles.html#h-14.3.1 >ユーザエージェントは、別のスタイル名を持つ代替スタイルシートを適用してはならない。
http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/present/styles.html#h-14.3.1 とあって、531の引用が続くけど、これって、"alternate stylesheet"はダメで、"stylesheet alternate"にしなさいよってことなのでしょうか?
rel(rev)属性の順序に意味があるとは書かれていないし、
>To specify an alternate style sheet, set the rel attribute to "alternate stylesheet" and name the style sheet with the title attribute.
の"alternate stylesheet"はあくまでも例で、"stylesheet alternate"でも良いと解釈できるのではないかなと思いました。
rel(rev)属性は、"index contents"でも"contents index"でもいいはずで、
%LinkTypes;に「alternate stylesheet」というスペース付きの値はなく、
上記の引用部分がある以上、「alternate stylesheet」(スペース付)を、仕様書に定義されていない独自のキーワードとはとれないと思うので、
"stylesheet alternate"でも"alternate stylesheet"でも同じように解釈されるべきではないかなと…
いや、文法論議をするつもりも、そんな知識もないし、
無理してバグリストに載せてほしいわけでもないんですが、
代替スタイル用意してOperaでチェックしたらエライことになってたもので、
他にも同様の症状が出てる人がいたり、これからCSSをやろうって人には有用な情報になるかな思っただけです。
仕様通りの動作で、私の誤記にすぎないならすみません。
(あと、「簡易な解決策があるものはこの板にはそぐわない」という場合もすみません)
> あるスタイルシートを代替に指定するには、 rel属性の値を "alternate stylesheet" にし、かつtitle属性で名前をつける。
これ読んでも誤記じゃないと思うならバグだと信じてればイイヨ
英語として考えるとalternateは形容詞だからstylesheetの後ろに来るわけ無いと思うんですが…。
まあ属性値だから英文法云々言ってもしゃーないけど
まあ、バグか否かはさておき
バグリストに挙げておく価値はあるかなと漏れは思う。
538 :
528:03/10/12 00:16 ID:rQtqlllx
空白が許されない以上、空白つきのキーワードと解釈するべき……?
ナヴィゲーション・リンクを
<link rel="index" lang="ja" href="A.html">だと表示してくれるが
rel="contents index"と列記すると表示してくれなくなるブラウザもある。
OperaやMozillaで較べてみよう。
>>538 そのリンク先の所にも書いてるけど、
> In the DTD, %LinkTypes refers to a space-separated list of link types.
だから、スペースが許されないのは「%LinkTypes」ではなく個々の
「link types」の方。
規格上は、"alternate index" もOKだし、例えば2番目の文書から最初の文書
を参照させる時は rel="start prev" と書けるはず。
ただ、
>>540 のようにブラウザがこれに対応しているかどうかは別問題。
IE6(互換、標準とも)で確認
border-styleにinset、またはoutsetを指定しborder-colorが未指定のとき
謎の色のボーダーを表示する(colorの値を受け継がない)
border-colorを指定すればその色で表示される。但し暗い色だとつぶれてしまう
>>542 border-widthを50px位に十分太くして実験しましたか。
544 :
542:03/10/12 20:15 ID:???
<div style="color:red;border-style:inset outset solid double;border-width:50px">文字</div>
<div style="color:red;border-color:blue red black white;border-width:50px;border-style:inset">文字</div>
<div style="color:black;border:50px inset">文字</div>
<div style="color:black;border:50px inset black">文字</div>
これで再現できます
>516
亀レスだけど、
optgroup要素の直前に終了タグを省略したoption要素があるとoptgroupタグが無視される。
<select>
<optgroup>
<option>
<option>
</optgroup>
<option>
</select> ←これは問題なくて
<select>
<option>
<optgroup>
<option>
<option>
</optgroup>
</select> ←これだと変。
>>546-547 844 :841 :03/10/16 02:21 ID:IIBmTXLY
ちなみに、operaで見ると表示されないソースは↓です。
<html>
<head>
<title>MENU</title>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<style type="text/css">
<!--
body{overflow:auto}
-->
</style>
</head>
<body bgcolor="#F0F0F0" text="#000000" leftmargin="0" topmargin="15" marginwidth="0" marginheight="15">
<table border="0" cellspacing="0" cellpadding="0" align="right">
<tr>
<td>
<p><img src="img/menu/title_a.gif" width="84" height="20"></p>
<p><a href="main.html"><img src="img/menu/top.gif" width="170" height="25" border="0"></a></p>
<p><a href="cgi-bin/bbs/thebbs.cgi"><img src="img/menu/bbs.gif" width="170" height="25" border="0"></a></p>
<p><a href="cgi-bin/imgbbs/index.html"><img src="img/menu/bbs_g.gif" width="170" height="25" border="0"></a></p>
<p><a href="cgi-bin/chat/index.html"><img src="img/menu/chat.gif" width="170" height="25" border="0"></a></p>
<p><a href="kikaku/index.html"><img src="img/menu/kikaku.gif" width="170" height="25" border="0"></a></p>
<p><a href="link/index.html"><img src="img/menu/link.gif" width="170" height="25" border="0"></a></p>
</td>
</tr>
</table>
</body>
</html>
Windows ユーザーじゃないので手元であまり試せないのですが、
<ul>
<li style="background: #ccf">あああ
<span style="display: block">いいい</span></li>
</ul>
IE5.5 でこういうのを表示させると、「いいい」の行の下が空いて
しまいます。li 要素や span 要素の margin や padding を 0 にしても
間が空きます。span 要素の代わりに div 要素にすると空かないようです。
インライン要素を無理にブロック表示に変えると空く?
試してみて下さい。
>>550 インライン要素ならすべてなるようですね。span, em, strong の
どれでもなりました。それから、そのページでは、
<li><a>.....</a></li>
という例になってますが、
<li>.....<a>.....</a></li>
でもなります。
<li><a>.....</a>.....</li>
ならなりません。
まとめると、li 要素の内容がインライン要素で終わっている場合に、
その要素を CSS でブロック表示にすると発生する。
えっと、結構特殊な事例かもしれませんが、IE6で、
<div style="float: left; width: 30%">
あああ
</div>
<div style="float: right; width: 30%">
あああ
</div>
<div style="clear: both; background: #cff; border: 1px solid #9cc">
<p style="background: #9cc; margin: 0">あああ</p>
<p>あああ</p>
</div>
この一番下のdiv要素の中の最初のp要素の上に1pxほどの隙間ができて
しまいます。
この例では前にあるfloatが30%どうしですが、これを50%どうしにすると
この問題は起こりません。どうやらfloatされてる幅の合計が100%未満で、
まだ何かの要素が入る余地がある状態の時にclearを掛けたら問題が起こる
ようです。
これを防ぐには、clearを掛けたdiv要素にwidthを指定するといいようです。
実際、一番下のdiv要素に「width: 100%」などを追加すると隙間はあき
ません。まあ、通常は1pxぐらいずれても問題ないでしょうが、背景色や
枠線を付けてる場合はずれると格好悪い場合もあるでしょう。
IE6。
アンカーにhover要素とbackground-color指定した場合、hover状態にすると
フィルター要素(filter:alpha)をつけた境界線(HR)は跡形も泣く消滅する。
同じフィルター要素でも画像<img>は何の影響も受けない。
IE5.5では何も問題のない指定。
既出?
>>554 >随分前にカキコしたとき
どこで? 見当たらないよ。
IE6
ul#menu{ margin:0; padding:0; background-color:#bbcccc;}
#menu{ width:100%; padding:0px 2em; display:block; background-color:#bcd6fc;}
#menu li{ ;}
<ul id="menu">
<li>Top</li>
<li>menu1</li>
</ul>
既出覚悟。2行目のCSSが効かない。
3行目のはしっかり効く。
IE6
h1#title{ width:100%; padding:0.2em; background-color:#95a0f1;}
<h1 id="title">Test Page</h1>
paddingのおかげで範囲外へ突き出る
>>558 ( ´д)ヒソ(´д`)ヒソ(д` )
>>559-560 スンマソ。これじゃCSS質問スレ向きか。
body,h1{ margin:0;padding:0;}
これも入ってるんだが、家のIE6だとwidth:100%;の幅が広がったんだよ。
今試したが、別機のIE5だとそんなことは無い。
>>562 ( ´д)ヒソ(´д`)ヒソ(д` )
つД`)
.,..-──- 、
/. : : : : : : : : : \ お
表 /.: : : : : : : : : : : : : : ヽ い
へ ,!::: : : :,-…-…-ミ: : : : :',
>>558 出 {:: : : : :i '⌒' '⌒' i: : : : :}
ろ {:: : : : | ェェ ェェ |: : : : :}
. , 、 { : : : :| ,.、 |:: : : :;!
. ヽ ヽ. _ .ヾ: :: :i r‐-ニ-┐ | : : :ノ
} >'´.-!、 ゞイ! ヽ 二゙ノ イゞ‐′
| −! \` ー一'´丿 \
ノ ,二!\ \___/ /`丶、
/\ / \ /~ト、 / l \
570 :
Name_Not_Found:03/10/29 22:54 ID:pkvCbnmZ
CSSバグには当たらないのかもしれないが……。
【IE6/WinME】
.unicode {font-family:'Lucida Sans Unicode','Arial Unicode MS', "MS 明朝", "平成明朝", Micho, serif;}
<p><span class="unicode">絓</span>秀実によれば……</p>
上記みたいに実体参照したソースにユニコード・フォントを指定した。
IE6/WinMEで見ると、'Arial Unicode MS'をインストールしてない機械では文字化けする。白四角になる。
'Lucida Sans Unicode'がインストールされてても、文字化けする。
しかしWin98SE/IE5.0〜IE6だと化けなかった。'Arial Unicode MS'の有無に関係なく、ちゃんと表示される。
'Lucida Sans Unicode',をコメントアウトすると、IE6/WinMEでも化けなくなる。
また、'Lucida Sans Unicode'を他の欧文フォントにすると、IE6/WinMEでは黒点に化ける。
どうなってんの?
【Mozilla(Gecko/20030718、和ジラ1.4のビルド)】
親要素(例えばbody)にmarginやpaddingで余白をつくり(例 margin-left:4em)、
子要素(例えばh1)でマイナスのマージン(例 margin-left:-1em)を指定しても反映されない。
既出でしたらすみません。
>>571 うちのMozilla 1.5では再現しないんだけど、それは和ジラビルドだけの問題かな。
ちなみに、マージンに負の値も設定可能だが、実装上制限があるかもしれない
と仕様書にあるので、負のマージンを指定して効かなくてもバグという訳ではない。
テストしたHTMLとCSSは以下。
**** hoge.html ****
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "
http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
<meta http-equiv="content-type" content="text/html; charset=shift_jis">
<title>てすと</title>
<link rel="stylesheet" href="hoge.css" type="text/css">
</head>
<body>
<h1 class="negative-margin">てすと</h1>
<h1>てすと</h1>
</body>
</html>
**** hoge.css ****
body { margin-left: 4em; }
h1 { background-color: red; }
h1.negative-margin { margin-left: -1em; }
>>572 作っていただいたHTMLとCSSも、見事に和ジラ1.4のみ、負のマージンが反映されませんでした。
恐らくは和ジラビルドだけではなく、Mozilla1.4全般で再現されるのだと推測しているのですが(確認は出来ておりません)。
ちなみに1.5では当方でも再現されませんでした。記し忘れてしまいすみません。
仕様書は調べる時間が取れなかったので、教えていただいてありがとうございます。
CSS3を先取りしたWinIE独自拡張ですが、
長いurlを文中(<p></p>)に入れる場合、spanで括ってword-break:break-all;と指定してます。
でもIE6SP1では効かないみたいで、urlの途中で折り返ししてくれないんです。
行末が揃ってないからみっともなくて……。
無効になるのは何か条件でもあるのですかね?
>>574 単に半角英字ばかりが続いていて折り返しできないのでは?
IEでもMozillaでも同じ。
>>576 word-break:break-all;ってどういう意味だか知ってますか
昔の草案では applies to block level elements.だったので、それに合わせて厳格にしたのでは?
今の草案では全要素だけどね。
581 :
Name_Not_Found:03/11/06 15:36 ID:a5l91uTA
IE側なのかMozilla側なのか分からんが、リスト周辺でバグが・・・。
それぞれIE6とMozilla1.5
ul{padding-left : 1em;}
ul ul{padding-left : 0em;}
<ul><li>文字文字</li>
<ul><li>文字文字</li>
<li>文字文字</li>
<li>文字文字</li>
</ul></ul>
IEでは正常に段組されるが、Mozillaだと全部縦一列に並ぶ。
これを修正するのに
ul ul{padding-left : -1em;}
とやると一応1em分だけ横にずれる。ただしIE,Mozilla双方。
UL要素直下にはLI要素しか置けないんだが。
>>581 最低限ValidなHTMLに汁。
とりあえずW3CのValidatorやAnother HTML-lint使ってみれ。
そーする。吊ってきま。
588 :
587:03/11/16 15:48 ID:???
すまん、訂正です。
font-familyで英字の日本語フォントを指定しても、
↓
font-familyで英字の日本語フォント名を指定しても、
>>587 OperaとかIEと一緒で2つ目以降の文字指定を無視してるだけじゃないの?
デフォルトフォントをヒラギノ以外にして Arial,Osakaとやってみるとか
もうちょっとイロイロなパターンを試さないと
英字名のフォントが無視されるとは言い切れないかと。
【WinIE6】DHTML
border属性が指定してあるtableでドロップダウン表示用のメニューを作っておいて、
document.all.item(sid).style.visibility='hidden';
とすると、tdの横線だけ消えないで表示される(一度ドロップダウンすると消える)。
document.getElementById(sid).style.display='none';
とすれば大丈夫らしい。
http://pc2.2ch.net/test/read.cgi/hp/1068535773/383- (特に393以下)
>>590 OS Xは、WINのXPみたいにいフォントリンクしてるとかってことはないんですか?
XPだとtahomaはMS UI Gohicにフォントリンクされちゃうんだけど
Arialを指定すると、日本語部分が自動でヒラギノの角ゴになっちゃうみたいな
http://pc2.2ch.net/test/read.cgi/hp/1066310242/924- >ページの最下部に表示させたいと思っています。
>文章量が少ない場合(スクロールなし)は、文章の下に空白をとって「見た目の最下部」に、
>多い場合(スクロールが出る)は文章の終わりに、という風にしたいのです。
>すると、IE5.5、Opera7.20では意図通り表示されるのですが、
>Netscape 7.01では常にページの見た目最下部に表示されてしまい、
>文章量が多い場合、文章と重なって一緒に上へスクロールされてしまいます。
>MacOS9.1でも確認して貰ったところ、IE(バージョン不明)でも同じようになってしまうそうです。
ソース例
<body>
<p>1</p>
<p>2</p>
<p>3</p>
……中略……
<div style="position:absolute; bottom:1em; left:50px; color:red;">
フッタ
</div>
<body>
>IE6でもネスケと同じになるよ
とのこと。
Opera7.2だけ異なる表示なわけだが、さてどれが正しい? バグなのかどうか。
>>594 >意図した表示にするためには、これを指定すればいいだけ。
html {height:100%;}では表示は変化しなかったよ。
また上のIEバグと違って、topは指定してない。
それに下のOperaのバグはrightの場合だけでbottomは登録されてないみたいだが?
>>594 IE6でDOCTYPE宣言で互換モードにして
>>593のソースを表示したが、
やはり「常にページの見た目最下部に表示されてしまい、
文章量が多い場合、文章と重なって一緒に上へスクロールされてしまいます」よ。
>>587の後半
Safariは、ブラウザ標準フォントをデフォルトの「Times」に
していると日本語のbold部分が太字になりませんが、環境設定で
標準フォントを「ヒラギノ角ゴ」などに変更すると、ちゃんと
日本語boldが効きます。
じゃあ、日本語フォントを指定すれば大丈夫かと思って「Osaka」
などを指定してもboldは効きません。
でも、DTP用のNewCID「新ゴ」ファミリーなどをインストール
している場合、「新ゴ」を指定するとboldは効きます。「小塚
ゴシック」とかでもOK。「太ゴB101」とかはダメ。
ひょっとして、W3,W6とか、L,M,Bとかいった太さに関する名前の
ついたフォントを指定しないとダメなのかな?
WinIE6 で下記のソースを表示してリサイズすると、
thead のスタイルがヘッダ行グループや表要素からはみ出る。
thead にも position: relative; を指定すると発生しなくなる。
レンダリングモードはバグの条件に関係なし。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"
http://www.w3.org/TR/html4/loose.dtd">
<title>【(゚Д゚)ハァ?】なんですかこのバグは!?</title>
<style type="text/css">
div {
border: solid thin olive;
margin: 1em; padding: .5em;
position: relative;
}
thead {
color: white; background: olive;
}
</style>
<div>
<p>段落… 段落… 段落… 段落… 段落… 段落… 段落… 段落… 段落… 段落…</p>
<table border="1" align="center" width="90%">
<thead>
<tr><th>ヘッダ1</th><th>ヘッダ2</th></tr>
</thead>
<tbody>
<tr><td>データ1</td><td>データ2</td></tr>
</tbody>
</table>
</div>
599 :
598:03/11/19 01:18 ID:???
補足。どうやら tbody や tfoot でも発生する模様。
>>592 正解っぽ。
>Arialを指定すると、日本語部分が自動でヒラギノの角ゴになっちゃうみたいな
ちなみに、
font-family : Times , "小塚明朝 Std R" , "Kozuka Mincho Std" , serif ;
てな記述では、日本語部分がヒラギノ明朝で表示されますた。
【WinIE5.5〜6】
JavaScript無効時、後続hrに背景色を指定してあると、文書先頭の絶対配置要素が初期値を無視して左から50%に配置される。
最初に、IEで下記の通りにJavaScriptを無効にしておく。
メニューバー→[ツール] > [インターネットオプション] > [セキュリティ] > 任意のゾーン([インターネット])→[レベルのカスタマイズ] > セキュリティの設定→[スクリプト] > [アクティブスクリプト]→[無効にする]
ソースは次の通り。
<body>
<div id="navbar">メニュー</div>
<hr class="thick">
<h1>タイトル</h1>
……以下略</body>
#navbar{
position:absolute;
z-index:5; top:0px;
}
hr.thick { height:10px;
color:red;/*IE向け指定*/
background:red;/*Mozilla向け指定。これを削るとなぜかバグらない。*/
}
対処法は、#navbar {left:0;} を追加すると正常な位置に配置される。
または<body>直下、div#navbarとの間に任意の文字列をタグで括らないで書き込むと
その文字のすぐ右側に配置される。
アクティブスクリプト有効時、このバグは発現しない。
DOCTYPE宣言(標準/互換モード)も関係ない。
602 :
601:03/11/19 19:42 ID:???
ごめん、間違った。
JavaScriptだのアクティヴスクリプトだのは関係なかった。
スクリプトONでも、
>>601のバグは起こります。
MacIE5.1で、表の空セルを表示させて枠線を付けると、本来の
セルの大きさより大きく表示されます。
table { empty-cells: show }
td { border: 1px solid }
<table>
<tr><td>xx</td><td>xx</td></tr>
<tr><td>xx</td><td></td></tr>
</table>
これで全セルは同じ大きさになるはずですが、右下の空セルの
枠だけが大きく、隣の枠線と重なってしまいます。
なお、td 要素に background プロパティを指定すると、背景
領域は全セル同じ大きさになります。つまり border だけが
大きくて background は正常な大きさなのです。従って、
border と background の間に隙間が空きます。
なお、この問題は空セルを <td></td> ではなく、<td> </td> と
いう風に間にスペースを書くようにすれば発生しません。
【IE6】
リンクをポイントするとIframeのサイズが変わってしまいます。
heightを%以外で設定すれば大丈夫ですが。
<style type="text/css">
A:hover{ color:#0000FF; position:relative; top:1px; left:1px;}
</style>
<body>
<table border=1><tr><td><a href="
http://google.co.jp">ぐぐる</a>
<p> </p><p> </p><p </p><p> </p><p> </p></td>
<td><IFRAME src="
http://google.co.jp" width="400" height="100%">
</IFRAME></td><tr></table>
これは以下の症状と同じ事でしょうか?
http://cssbug.tripod.co.jp/のバグ038 >WinIE6.0ではアンカーにポイントしたときに要素がずれる現象が起きました。
605 :
603:03/11/20 01:49 ID:???
すみません。
css云々ではなく単にhtmlの文法が
間違ってただけかもしれません…。
原因はわかりませんが…。
607 :
くろさん:03/11/21 02:21 ID:uso8O1ae
CSS仕様では
fixedにするためには
col(またはセル)だけでなくtableのwidth指定が必須。
610 :
Name_Not_Found:03/11/23 18:52 ID:zULC30g6
テーブル幅を固定するには「table-layout=fixed & widht= NOT auto」こと、教えていただきありがとうございました。
さて、moz, operaでは、colへの属性指定は、tdに伝わらないのでしょうか?
IE6だと、2つ目のabcdefは赤色になるのですけどね。
またまた、moz,operaの方が「正しいCSS」なのでしょうか。
<html>
<head>
<style type="text/css">
body { font-size: 12px;}
col.change { color : red; }
</style>
</head>
<body>
<table border="1">
<col></col>
<col class="change"></col>
<tr><td>ABCDEFG<td>abcdefg
</table>
</body>
</html>
611 :
すみません:03/11/23 18:54 ID:zULC30g6
直前の質問をしたものですが、質問スレは他にありましたので、そちらにカキコします。
すみませんでした。
news.html
style.css
blogbody.css
title.css
blogarticle.css
linkbar.css
banner.css
みたいに細切れのシートを、@import文を使いまくってページを制作しています。
(インデントは、ツリー条の構造をしている、親子関係を表しています)
WinXPのOpera7.20、Opera7.22で確認しましたが
@importで読み込んだシートのスタイルは処理するのですが、rootのシートである
style.cssに書き足したデザインを処理してくれません。
(@import url("");でも@import "";でも症状は変わらないようです)
困ったので、試しにテストページを作ったのですが
こちらは正常に表示されます
http://www.geocities.co.jp/Playtown-Knight/9224/import_test.html あとF5でリロードすると、全部処理して意図したとおりに表示されてくれます。
HDD内でテスト表示させた場合にも正常に表示されています。
処理に関しては:before,:afterセレクタが付いたモノに関しては、例外的で処理を行ってくれています
と言う状況で、正直、"この時は処理しない"という規則が見えないで困っていたりします
同じ物を、再現できなかったので、不具合の起こったシートを用意できなくてすいませんが
何方か、似たような不具合が起こった方は、ご意見を頂けるとありがたいです
news.html
style.css
blogbody.css
title.css
blogarticle.css
linkbar.css
banner.css
みたいに細切れのシートを、@import文を使いまくってページを制作しています。
(インデントは、ツリー条の構造をしている、親子関係を表しています)
WinXPのOpera7.20、Opera7.22で確認しましたが
@importで読み込んだシートのスタイルは処理するのですが、rootのシートである
style.cssに書き足したデザインを処理してくれません。
(@import url("");でも@import "";でも症状は変わらないようです)
困ったので、試しにテストページを作ったのですが
こちらは正常に表示されます
http://www.geocities.co.jp/Playtown-Knight/9224/import_test.html あとF5でリロードすると、全部処理して意図したとおりに表示されてくれます。
HDD内でテスト表示させた場合にも正常に表示されています。
処理に関しては:before,:afterセレクタが付いたモノに関しては、例外的で処理を行ってくれています
と言う状況で、正直、"この時は処理しない"という規則が見えないで困っていたりします
同じ物を、再現できなかったので、不具合の起こったシートを用意できなくてすいませんが
何方か、似たような不具合が起こった方は、ご意見を頂けるとありがたいです
2重投稿スイマセン…
投稿したときに、インデントが消えてしまったので罫線を付けさせて頂きます。
news.html
└style.css
├blogbody.css
│├title.css
│└blogarticle.css
└linkbar.css
└banner.css
スペースでも消えてしまいますね…
・news.html
・└style.css
・├blogbody.css
・│├title.css
・│└blogarticle.css
・└linkbar.css
・└banner.css
>>615 その症状が再現できるcssの中身を晒してもらわないとわかりません。
>>620 当方WinXp + Opera7.20ですが、
最初から(おそらくは)あなたの意図どおりに表示されました。
(少なくとも下のPreviewのような恐ろしいことにはなってません)
>>620 Opera7.20で再現でけたよ。気まぐれだなOpera
623 :
621:03/11/24 06:14 ID:???
えっと、訂正です。
私の場合、オンラインで見てるときは問題ないのですが、
回線切って、オフラインで履歴を見ると、確かに再現されました。
……なんなんだろう?
624 :
621:03/11/24 06:42 ID:???
top_plus.cssとか見てみたけど。
bodyのひとつめでpaddingを0に指定して、
そのすぐ後でpadding-leftに値を持たせている、
その評価のタイミング
div#menu_boxでtopとleftを使っているのに
position指定がない
とか、不安定なCSSだな、とは思ったけど。
そのあたりが関係ありそうな気はする。
>>625 「動いている」って何だよ。馬鹿っぽいぞ。
627 :
621:03/11/24 22:14 ID:???
>>625 624はスルー? まあいいけど。
ざっと見て、例えば、html_default.css の35行目と記述がぶつかってるよ。
他にもいろいろ……
link.htm と link.css の dl に class や id を持たせたほうがいい。
それでも再現されたら、バグかもしれない。
とにかく、不具合とか騒ぐ前に、正しい CSS を書いてるかどうかチェックしたほうがいい。
不正な CSS に基づいて、ブラウザが不審な表示をしても、ブラウザに罪はないよ。
せめてvailder通してから持ってきてくれ
vailderたん(´Д`)ハァハァ
全言語のページからvailderを検索しました。
約26件中1 - 21件目 ・検索にかかった時間0.18秒
日本語validatorキボンヌ
>>632 はて、
>>631で挙がったvalidatorは日本語だがね?
>>627 幾分問題のあるスタイル指定だとしても、
リロードすればちゃんと表示されるんだから、やはりバグでないの?
どうも、お返事遅れてスイマセン
>621
>bodyのひとつめでpaddingを0に指定して、
>そのすぐ後でpadding-leftに値を持たせている、
>その評価のタイミング
>div#menu_boxでtopとleftを使っているのに
>position指定がない
テストケース2
一応、menu_boxのposition:absolute;方は
class="link_bar" id="menu_box"
の方のlink_barクラスの方にあててあります(link_bar.cssから読み込んでいるside_bar.css内)
ただ、確かにどちらも誤動作の原因になりかねませんね
paddingの書き方に関しては以後2度と致しません
positionの方は、併用して上手くいくように、少し知恵を絞ってきます。
>624
自分のシートをvailderに掛けたところ、「あ」という感じで
数カ所ミスが見つかりました
修正して…、少しシートの方も煩雑なのでまとめ直して…、それでも症状が出るかテストして
後日書き直させて頂きます
お手間をおかけいたしました。
>>605は私じゃないです。誰か番号を間違えてる?
というわけで、改めて
>>603は確かに起こります。
IE6ですが、
<div style="margin-left: 5em; border: 1px solid">
<p style="margin-left: -5em; width: 5em">テスト</p>
</div>
<p>テスト</p>
上記は 5em マージンの中に -5em マージンがあるので、元の
位置に戻って2つのp要素は揃うはずですが、揃いません。
発生条件は、
・外側の要素に border がある。
・内側の要素に width を指定。
・内側の要素にマイナスのマージン
という条件が重なった場合に、その内側のマージンが無視される
ようです。
637 :
636:03/11/27 23:38 ID:???
>>636 はIE6標準モードだけで発生します。互換モードや
IE5.5では起こりません。
638 :
528:03/11/28 19:30 ID:j3Mv4gjv
safari
link要素にtype属性を指定した上で外部CSSを読み込んだ場合、
先頭に記述したlink要素を固定スタイルシートとして認識する。
<link rel="ALTERNATE STYLESHEET" type="text/css" href="daitai.css" title="代替スタイル">
<link rel="STYLESHEET" type="text/css" href="kotei.css">
とすると、kotei.cssとdaitai.cssの両方が読み込まれる。
<link rel="ALTERNATE STYLESHEET" type="text/css" href="daitai.css" title="代替スタイル">
<link rel="STYLESHEET" type="text/css" href="yusen.css" title="優先スタイル">
とすると、daitai.cssのみが読み込まれる。
不適切だったり、記述に不備があれば申し訳ない。
>>638 >528のときもそうだったけど、UAとOSのバージョンを明記汁。
そうしないと情報として役立たない(0とは言わないが)。
640 :
528:03/11/29 00:58 ID:Thko+n23
>>638 ゴメン。
ちゅーか、UAとOSのバージョンの前に、同じソースで再現できなかった・・・
キャッシュはしないように設定しているので、再現できない理由は不明。
もちっと試してから、出直します。
>>640 >528のときもそうだったが、最低限再現する状況と
それがW3Cの勧告と異なっているのか(本当にバグなのか)
調べてから書けよ。
んなこと当たり前なんだが、「バグを見つけた」と騒ぎたい
だけの厨なのか?
642 :
528:03/11/29 18:59 ID:Thko+n23
Safari(v85.6 OS10.2)については、
「代替スタイルシートを、優先・固定スタイルより先に記すと、
代替が固定として認識されることが<strong>ありうる</strong>」
でした。
代替の後ろに記述するのが優先なら確率1/2くらい、固定なら1/3~5くらい。
同じソースをリロードする度に、表示が変わるけど、法則と原因は不明。
昨日はtype属性を消してみたり、記述順を変えたり、いろいろな条件を試していて、
偶然、type属性を記述した時にのみ、症状が出ていた様子。
このスレをまとめたサイトを活用させてもらってるので、
自分が見つけた時は、他の人の為に報告しようと思っただけ。
別に他に同様の症状が出てる人がいなければ、それでいいし、
いるなら、役立ててくださいってだけ。
ちなみに、528はバグだと思って書き込んで、
「バグじゃねー」と言われて、勧告を狭義に読み直して、
「んじゃ、バグじゃねーってことでいいよ」と考えを変えて、
541見て、もいちどちゃんと読んで、結局、個人的にはバグだと今でも思ってる。
528や今回のを、報告・掲載する必要があるかどうかについては、
このスレ、この板の住人じゃないというか、
そもそも2chに常駐すらしていないので分からない。
住人しか書き込むなと言うなら、そうします。
OS,UAのバージョンを書いてないのと、再現する状況のテスト不足、
W3C勧告の理解不足についてはすなおに、ゴメンなさい。
WinIE6で、
floatプロパディが指定された要素のmarginを指定すると倍の値が適用されちゃうのは既出っすか?
648 :
647:03/11/30 01:39 ID:???
いや、どうも再現しない場合があるね。
以前に閲覧したときの文字サイズに強制的に変更するみたいでもある。
大で上記URLを表示→別ページを表示→文字サイズ小にする→上記URLを表示→
とすると、小にならず「大」になりました。
649 :
Name_Not_Found:03/11/30 01:56 ID:GTC4QolK
>>649 同じスタイルを入れ子ulではなく入れ子divに適用させたら問題なかった。
リスト要素だけバグるのかな。絶対配置要素にz-index指定しても効かないね。
651 :
649:03/11/30 13:17 ID:GTC4QolK
Mozilla 1.0.1 + Windows XP Home で、
・ULかOLかLIのリストマーカーに画像を指定する。
・LI要素の先頭にUL、OL以外のブロックレベル要素を含む。
・<li>タグの後に空白文字(改行/空白/タブ)を含む。
と、マーカーが消えてしまうことがありました。
それもローカルのファイルでなく、
http://〜 のURLを表示したときのみ。
さらにアドレス欄にURLを打ち、Enterしたときは表示され、
リロードすると消えるなどはっきりしません。
<style type="text/css">
ul { list-style-image: url("marker.png"); }
</style>
:
<ul>
<li>
<div>空白文字 + ブロック → マーカーが消える</div></li>
<li><p>ブロックのみ → マーカー画像が表示される</p></li>
</ul>
654 :
653:03/12/01 01:37 ID:???
すんません書き忘れ。条件の、
> LI要素の先頭に"UL、OL以外"のブロックレベル要素を含む
ってのは全部調べたわけじゃないです。
UL,OL,P,DIV,DL,TABLE,Hn くらい見たかn
656 :
Name_Not_Found:03/12/01 08:31 ID:Mc1e8qus
659 :
sage:03/12/04 00:11 ID:XdSini6M
tr{
background: transparent url('sage.png') center right repeat-x;
}
のような指定をしても Opera6, 7 両方で repeat-x が無視されて
背景画像が全面に敷き詰められる。
660 :
Name_Not_Found:03/12/08 11:22 ID:TunXwEpJ
ちょっと確認なんですが、Mac-IEでは @media ブロック内の「全ての」宣言が無視される
ってので合ってるんでしょうか?(インデントのための全角スペースはご容赦)
@media screen {
H1 { color: #FF0000 }
H2 { color: #FFFF00 }
H3 { color: #00FF00 }
H4 { color: #00FFFF }
H5 { color: #0000FF }
H6 { color: #FF00FF }
}
上の例でH1〜H6まで全部無視されるということでOKですか?
ちなみにWin-IE4では(おそらくIE3も) @media を「セレクタ」とみなして
@media以降初めて } が出現するところまでが無視されるので
H1だけスタイルが適用されず、H2以降はスタイルが適用される
(媒体種は区別しない)わけですが、バグの性質が違うのかどうか確認したいのです。
> 上の例でH1〜H6まで全部無視されるということでOKですか?
その通りです。括弧の対応をチェックしているみたいですね。
IE6ですが、
div { padding: 0 20% }
a:hover { background: #fcc }
<div>
<p><a href="xx.html">テスト</a></p>
</div>
このように、パーセントのpaddingを指定した中に背景色を
指定したA:hoverを書くと、リンクにマウスポインタを乗せた
時に文字がずれます。
<script type="text/javascript">
onload=function(){alert(document.getElementById("ta").value);}
</script>
<textarea id="ta" style="display:none;">hogehoge</textarea>
IE、Mozillaだと"hogehoge"が表示されますがOperaだと"Warning"という謎の文字列が表示されます。
エラー、例外などは発生しません。
>>661 レス遅くなりました。
NN4も括弧の対応はちゃんとチェックしてるので
@media で NN4 と Mac-IE 両方が除かれるということですね。
ありがとうございました。
666 :
Name_Not_Found:03/12/11 14:32 ID:qnEJrBaP
CSSとはあんまり関係ないっぽいけどマックのIE5で
<td align="right"><a href="hoge.html">hoge</a></td>
とか、
<div align="right"><a href="hoge.html">hoge</a></div>
としたときにtdやdivのエリアのなかでhogeのリンクの位置はたしかに右寄せになるんだけど
align="right"がついてないときに表示されたであろう場所あたりで
カーソルが指になって何も見えてないところがリンクされてしまう、
というバグは既出でしょうか?バグ辞典サイトにも出てないみたいだけど。
web creators誌2002/8/p42にも出てるんだけどtdの場合は
もう一つtdを99%で作って回避できるんだけどDIVの場合どうやって回避したら
いいんでしょうか?
668 :
Name_Not_Found:03/12/11 15:22 ID:qnEJrBaP
666です。
>>667 text-alignでも同じですがなにか?
結局テーブルにするしかないのか?
tdなら
<td width="99%"></td>
<td width="1%" nowrap="nowrap"><a href="hoge.html">hoge</a></td>
で逃げられるんだけど。
align="right"はCSSバグでないが
text-align:right;ならばCSSの問題です。
最初から、後者で書きなさいね。
>>668
670 :
633:03/12/11 15:41 ID:???
ブラウザのバージョンは
IE6.02
Moz1.5b
Opera7.11build2887
(すべてWinXP)
です
672 :
663:03/12/11 17:10 ID:???
すみません
670は663の間違いです
673 :
Name_Not_Found:03/12/11 17:35 ID:qnEJrBaP
>>666です。
>>669 たしかにその通りでございます。align="right"だとhtmlですね。
テキストのリンクをいくつか横並びで右つめにしたいわけなんですが
どんな風に書いたらいいんだろう?
もちろんそのリンクが並ぶ段にはいろいろとcssで装飾をしてます。
strictであることより崩れないことが第一な状況なんですが。
liをインラインで・・とか危なそうだ。結局テーブルが一番安全?
>>673 別に
>>666の報告を見てもレイアウトは「崩れない」みたいだが?
何にせよ、ここはバグ辞典スレッドですから、質問スレッドへどうぞ。
>676
感動した。明日にでも試してみる。
先生教えてください!
WindowsXPのテキストボックスって
初期表示の状態でフラットな状態ですが
document.form1["hoge"].style.backgroundColor = '#eeeeee';
とすると、テキストボックスがへこんだ状態になってしまいます
これを回避する方法はありますか?
borderにsolidとすればへこみがなくなるのですが
今度はXP以外のOSでもへこみなしになってしまいます。
いずれの環境でも、backgroundColorを設定したあとでも
とある契機でデフォルトの状態に戻したいのですが無理ですか?
へー、ってことはそれボタンにやったらトグルボタンになるってこと?
それいいなぁ。
>679
システム色キーワードを使ってみたら?
テキストボックスのデフォルト背景色は…たぶん「Window」かな。
document.form1["hoge"].style.backgroundColor = 'Window';
とすればデフォルトの色になると思う。
ボーダーまで戻るかどうかは知らないけど。
ただCSSでデザインしてるなら、
OSによらず同じ(似たような)見た目にした方が良い気もしなくもない。
普段使ってるインターフェイスに近い方が閲覧者に優しいかもよ
683 :
Name_Not_Found:03/12/13 00:19 ID:irkJn+d3
Mozilla Firebird 0.7 (Win/MacOSX)、DOCTYPE: HTML4.01 strict、
media: all で確認しました。
ブロック要素の first-letter 疑似クラスに font-size: 180%; float: left;
などと設定すると、英文によくある最初の文字だけ大きいレイアウトにできます
が、その状態で印刷を選ぶと、印刷結果では疑似クラスを設定したブロックの
2行目以降からそのページの終わりまでにあるブロックの左マージンが、疑似
クラスを設定したブロックの2文字目に揃った状態になります。
画面表示は大丈夫なので、みなさんあんまり興味ないでしょうか。
684 :
679:03/12/13 00:42 ID:???
>>681-682 Window試しましたが、へこんだままでした。
社内システムで入力不可の項目に使ってるのですが
気にしないでもらうことにします。
ありがとうございました。
でもこれってXPのバグなのかなー?
685 :
Name_Not_Found:03/12/13 01:03 ID:a6ACP15L
>>679 君の意図を読み間違えているのかもしれないが、
入力不可なら、
document.form.myTextbox.disabled = true
じゃないの? 誰か教えて。
>>685 それだけだと見た目分かりにくいから色も変える
687 :
685:03/12/14 01:04 ID:JRqVLQ/X
>>686 なるほど、やっと理解できた気がする。教えてくれてありがとう。
>>679 disabled と連動して class 属性値を切り替えるというのはどうだろう。
>>687 <input type="text" style="background-color:#eeeeee;">
よくわかってないのですが
上の時点ですでにへこんでしまうようです
class属性値を帰るってのは別の意味ですか?
689 :
Name_Not_Found:03/12/15 21:47 ID:sy8ZsWBK
marqueeのタグの中でloop="∞"ってあったんですが、∞って2バイト文字じゃないんですか?
世界共通で有効に機能する要素なんでしょうか??
>>690 marqueeだと? CSSと何の関係があるか。
今は関係ないけどcss3でmarquee勧告されっかも。
IEの属性をそのままプロパティにしたような感じ。
WAP-CSSでは正式な規格として既にmarqueeあるね。
で、仮に CSS3 で marquee が勧告されたとして、
それと謎 HTML の loop="∞" とどう関係があるの。
loop="∞" という記述が正しいか否かは HTML の仕様を
基準に判断すべき事であって、CSS の仕様は関係ない。
>690のソースはどこよ
CSS/DHTMLバグ辞典スレッド 第3版
CSS(とDHTML)のバグ報告、お待ちしてます。
やっぱ ascii では loop="∞" なんだろうな。
ボタン押してから気付いたけど展開されるよな。
loop="∞"
ISO 8859-1あたりにも∞があるんだろ。
JISにも定義されてるから日本語環境だと全角に見えると。
>>551 すさまじく今さらだけど、
http://cssbug.at.infoseek.co.jp/detail/winie/b071.html での対策以外にも、
a{display:block;}
<ul>
<li><a>hoge</a></li><li>
<a>foo</a></li></ul>
のように、</li>の後に空白や改行を入れないでソースを書けば回避できた。
他にも、liのスタイルにborderを指定してやれば回避できる模様。
(border-width:0;やborder-style:none;では駄目ぽい)
どちらもIE5.5、win2kで確認。既出だったらゴメン。
Opera7.23 日本語版
li の中身がリンクのみの場合、指定した line-height にならない。
例えばスタイルシートが
* { line-height: 1em; }
li { line-height: 1.5em; }
で
次のような記述
<ul>
<li>aaa</li>
<li>bbb</li>
<li>ccc</li>
</ul>
があった場合 aaa と bbb,bbb と ccc の間は 0.5em 分の行間が空きます(当たり前ですが)
ところが
<ul>
<li><a href="aaa.html">aaa</a></li>
<li><a href="bbb.html">bbb</a></li>
<li><a href="ccc.html">ccc</a></li>
</ul>
のように li の中身がリンクのみの場合、行間が空きません。詰まって表示されます。
ちなみに
<ul>
<li>1.<a href="aaa.html">aaa</a></li>
<li>2.<a href="bbb.html">bbb</a></li>
<li>3.<a href="ccc.html">ccc</a></li>
</ul>
のように li の中身にリンク以外の文字が含まれている場合は、きちんと行間が空きます。
うちはWindowsMEなんですけど、他の方の環境でも再現しますでしょうか?
>>700 そのバグって</li>タグを記述して要素の終端を明示しても、
内部的には</li>タグを省略した場合と同等に扱われるという
何とも納得のいかないトンデモ実装。実はdt要素でも発生します。
その他にも、要素間の空白ノードを勝手に取り除いたりもします。
つまりオブジェクトツリーを生成する段階でイレギュラーであると。
Microsoft は DOM1 を実装していると謳っているけれど、
実はMSIE4時代のDHTML機能をDOM風に偽装しているだけであると。
getElementsByTagName('!') でコメントを要素集合に含めてしまうし、
getAttribute() とかは、単にプロパティを肩代わりしているだけだし、
base要素は空要素のはずなのに、後続要素を包含してしまったりするし。
DOM はプラットフォーム中立・言語中立のインターフェイスのはずなのに、
MSIE の所為で、旧来のDHTML同様に余計な分岐処理を強いることになる。
CSS2 の実装も遅れてるし、MS はウェブの発展を著しく阻害している。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"
http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="
http://www.w3.org/1999/xhtml" dir="ltr" xml:lang="ja">
<head>
<title>XSLT関数をWindows上のPHP4.3.4で実行する際の注意</title>
</head><body>
<h1>テスト見出し1</h1>
<blockquote style="padding: 0.5em; border-width: 0em 0em 0em 3em;
border-style: none none none solid; border-color: gray gray gray gray;">
<p>テスト</p>
</blockquote>
<h2>テスト見出し2</h2>
</body></html>
IE6の標準モードだとblockquoteにパディングとボーダーを指定すると
なぜか「テスト見出し2」、というより後に続くブロック要素全部が
左にはみでるんだけど、これって仕様なんでしょうか。
Mozilla1.6だと特に問題はありませんでした。
ボーダーかパディングか、どちらかだけなら平気なのですが。
コピペするときにタイトル変えるの忘れた・・・。吊ってきます。
708 :
704:03/12/26 11:25 ID:???
既出でしたか。「ボーダー」と「パディング」で検索していたので
気が付きませんでした。
手元で実験してみたところ、左だけでなく、ボーダーを右に設定すると
右にもずれるようです。
>>702 > 要素間の空白ノードを勝手に取り除いたりもします。
http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/introduction.html > Note: There may be some variations depending on the parser being
> used to build the DOM. For instance, the DOM may not contain
> whitespaces in element content if the parser discards them.
(DOM構築に用いられるパーザにより若干の差異が存在する。
具体的には、パーザが要素内容中の空白文字を破棄する場合は、
DOMはこれを含まなくてもよい。)
その件については空白を破棄してもよい場合があるので注意。
CSS質問スレ26から来ました。IE6、5.5(その他はわかりません)で
body { line-height:1.3em; }
div.example { border:1px solid #000; }
dt { width:7em;float:left; }
として、
<div class="example">
<dl>
<dt>ほにゃほにゃ</dt><dd>なんとかかんとか</dd>
<dt>ほげほげ</dt><dd>なんとかかんとか</dd>
<dt>ぽにゃぽにゃ</dt><dd>なんとかかんとか</dd>
</dl>
</div>
とすると、定義リストの間に
exampleで指定した色のborder-topが表示されてしまいます。
div.exampleかdlにbackground-colorを指定すると解消されるようです。
>>709 702が言ってるのは、
IEは「要素内ではなくて要素間の」空白のみのテキストノードを勝手に取り除く
という話では?
>>711 要素の内容ではなくて(混在内容に対する)要素内容。
必ずしも「破棄=仕様違反」ではないので
>>702を読む人が早とちりしないように、という意図だった。
---CSS
IMG { border:1px solid red; vertical-align:bottom; }
---HTML
<div><img src="hoge.gif" width="100" height="10"></div>
IE6だと画像の右に不可解な半角スペース?が出てくるせいでレイアウトがずれます。
たとえばCtrl+マウスホイールすることで画像の位置が上下に移動します。
vertical-align:top/middle/bottom;が原因です。
/* CSS・スタイルシート質問スレッド【26】 */の307です。
バグなのかどうか分かりませんが報告します。環境はMac OSX 10.2.6です。
<head>
<style type="text/css">
<!--
body{color:#000; background-color:#fff}
a:link {text-decoration:none;color:#000;background-color:#ccc;}
a.visited{text-decoration:none;color:#000;background-color:#ccc;}
a:hover{color:#fff;background-color:#f00;}
a:active{color:#fff;background-color:#00f;}
a:link img{text-decoration:none;color:#000;background-color:#ccc;}
a:visited img{text-decoration:none;color:#000;background-color:#ccc;}
a:hover img{color:#0f0;background-color:#0f0;}
a:active img{color:#fff;background-color:#00f;}
-->
</style>
</head>
<body>
<a href="x">画像だよ<img src="あーたら.jpg" alt="あーたら"></a>
</body>
上記のソースでhoverの表示ですが、テキストに指定されたhoverの#f00が画像の下にも表示されます。
a:hover imgに、vertical-align:bottom;を追加指定すると、その#f00が、
Mozilla 1.2.1では消えますが、Safari 1.0(v85)、Opera 6.0、IE 5.2では消えません。
http://pc2.2ch.net/test/read.cgi/hp/1072018825/308-309 308 :Name_Not_Found :04/01/06 05:11 ID:???
>307の補足。
vertical-align:bottom;を、
a:link img、a:visited img、a:hover img、a:active img、全てに付けてみた。
そしたら、Mozilla 1.2.1、Safari 1.0(v85)、IE 5.2では、画像の下のhoverの赤が消えた。
Opera 6.0で消えない。
309 :Name_Not_Found :04/01/06 05:18 ID:???
あ、、、a:link imgに付けるだけで>308と同じですね。
そして今更、>289を読み間違えてたことに気付いた。
>716-717 関連
vertical-align:bottomを行内でheightが最大の要素に指定すると、
vertical-align:topを指定したようなレイアウトになってしまう。
WindowsのIE5.5/6(標準/互換)にて確認。
再現例
p {border:1px solid black; padding:0px;}
big {font-size:xx-large; background-color:#aa0;}
em {font-size:x-large; background-color:#aa0; margin:0px;}
q {font-size:xx-small; background-color:#aa0; margin:0px; vertical-align:bottom;}
<p>通常<em style="vertical-align:baseline;">強調(baseline)</em>続き<q>引用</q>終端</p>
<p>通常<em style="vertical-align:top;">強調(top)</em>続き<q>引用</q>終端</p>
<p>通常<em style="vertical-align:bottom;">強調(bottom)</em>続き<q>引用</q>終端</p>
<p><big>最大</big>通常<em style="vertical-align:top;">強調(top)</em>続き<q>引用</q>終端</p>
<p><big>最大</big>通常<em style="vertical-align:bottom;">強調(bottom)</em>続き<q>引用</q>終端</p>
# 上記でMozillaの場合emとqの上下に隙間が空くのは何故だろう…
>>719 >上記でMozillaの場合emとqの上下に隙間が空くのは何故だろう…
デフォルトの line-height が適用されているからです。
指定値「normal」は、UA が適切な算出値を設定することになっています。
各インライン要素に対して line-height: 1; を適用すれば隙間は消えます。
vertical-align の「top」と「bottom」はボックスの上辺か下辺を、
行ボックスの上辺か下辺に揃えるという意味です。
非置換インライン要素の高さは line-height によって決まります。
例えばデフォルトで 1.2 ぐらいの実数値が割り当てられていれば、
グリフ(字形)の上下に約 0.1em 分のスペースが均等に挿入されます。
ボーダーやパディングはボックスの周囲には表示されるのですが、
“インラインボックスの高さを計算するのには使用されません”。
行ボックスの高さからはみ出す周辺領域は切り落としてもよいことになっています。
722 :
719:04/01/10 02:00 ID:???
「hr要素へのスタイル指定」にSafariの情報を。
http://cssbug.at.infoseek.co.jp/misc/hr.html http://pc2.2ch.net/test/read.cgi/hp/1041996555/205-207 205 名前:Name_Not_Found :04/01/11 22:50 ID:???
Sfariでは、罫線<HR>のCOLOR指定は対応していないのですね…
罫線に色づけして他の色と同系色に合わせて使っているので、
これだけ色付きになってなくてショック。
そのうち対応してくれるのかな…
それとも、Sfariでも罫線に色つけられる方法ってあります?
206 名前:Name_Not_Found :04/01/11 23:01 ID:etVTjDyn
border-color と background-color でもだめ?
207 名前:205 :04/01/11 23:30 ID:???
あ、いけましたいけました!!
おっしゃる通り、スタイルのbackground-colorで。
で、これだけじゃ陰影がわずかについてくるので、
IEで見るCOLOR属性と同じようなくっきり線にするには
border-style:solid ですね。
言われてみれば単純なことでした。ありがとうございました。
724 :
Name_Not_Found:04/01/12 15:23 ID:YUsLnhgY
Safari v100.1 でthに指定したbackground-colorが無効になってるページが
あるんだけど、条件が分からない…。時間があったら検証してみようかな。
727 :
Name_Not_Found:04/01/17 15:50 ID:/XqC6ZuD
floatで回り込ませたdivが、
ちゃんと回り込めずに重なって表示されてしまうんだけど
これはブラウザが対応してないのかバグなのか・・・。
>>728 質問スレッドでFAQを見てから尋ねて下さい。ブラウザ名とヴァージョンも忘れずに。
780 :Name_Not_Found :04/01/21 12:43 ID:++dQIGAQ
---------------------------------------------------------------
<h3>其の一</h3>
<img src="./img/1.jpg" width="120" height="120" alt="米" />
<p>みんな米を食べようぜ</p>
<h3>其の二</h3>
<img src="./img/2.jpg" width="120" height="120" alt="酒" />
<p>酒飲もうぜ</p>
<h3>其の三</h3>
<img src="./img/3.jpg" width="120" height="120" alt="魚" />
<p>酒魚うまいぜ</p>
---------------------------------------------------------------
img {
float : left;
}
h3 {
clear : left;
margin : 1em 0em 0em 0em;
}
p {
margin : 0em;
}
---------------------------------------------------------------
ネスケとかモジラで見るとimgとh3の間にスペースができません。
匿名ブロック
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "
http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
<meta http-equiv="Content-Type"content="text/html; charset=Shift_JIS">
<meta http-equiv="Content-Script-Type"content="text/javascript">
<meta http-equiv="Content-Style-Type"content="text/css">
<meta name="content-language"content="ja">
<style type="text/css">
<!--
div.cnt { margin: 1em; }
a:link { border-width: 0; padding: 1px; }
a:visited { border-width: 0; padding: 1px; }
a:hover { border: 1px solid #f00; padding: 0; }
a:active { border: 1px solid #f00; padding: 0; }
h1:first-letter { color: #00f; }
-->
</style>
<title>bag</title>
</head>
735 :
続き:04/01/24 18:13 ID:???
<body>
<h1>1番目の階層に含まれるfirst-letter指定hn</h1>
<h1>1番目の階層に含まれるfirst-letter指定hn</h1>
<div class="cnt">
<p>
??<a href="#">これは動かない</a><br>
最初の<a>タグは正常に修飾される
</p>
<a href="#">階層が少ない例(第2階層)</a>
</div>
<h1>1番目の階層に含まれるfirst-letter指定hn</h1>
<div class="cnt">
<p>
??<a href="#">これが何故か動く(第3階層)</a><br>
</p>
<a href="#">階層が少ない例(第2階層)</a>
</div>
<a href="#">さらに階層が少ない例(第1階層なので不正)
</body>
</html>
<a>タグにPaddingを指定、これをhover時と通常時の間で違う値にした上で、
左marginをemで指定した親要素の下に置き、さらにそのmarginを指定した要素と同じ階層にhnを置き、これにfirst-letter疑似クラスでcolorを指定すると、
hover時に<a>の位置がずれる(親要素のpaddingが狂う?)。
解消方法としては、親要素の左marginを0にする。
737 :
Name_Not_Found:04/01/24 21:23 ID:2j+sbVPx
【IE6】
img要素を内包する要素へのline-height指定が効かない。
>>740 ソース出しなさいな。でないと確認もできない。
742 :
Name_Not_Found:04/01/25 20:09 ID:DakUhQzu
743 :
738:04/01/25 20:14 ID:???
<html>
<head>
<title>テスト</title>
<style>
<!--
p{
line-height:2;
border:1px solid black;
padding:0px;
}
-->
</style>
</head>
<body>
<p>
効かない<img src="hoge.png" alt="hoge" width="8" height="6" /><br />効かない
</p>
<p>
効く効く効く<br />効く効く
</p>
</body>
</html>
どうでしょうか?
>>738 そのまえにその滅茶苦茶なHTMLどうにかしてくれ
>>742 無視って……そんなにせくなよ。バグ辞典サイトに登録されるのを待つべし。
そもそもインライン要素にmarginやpaddingって効いて良いものだったか
>>743 精確には――
置換インライン要素(img)を含む行の前後のみ、line-heightが指定値より狭まる。
自働折り返しや<br>で改行されて問題の行より2行以上離れた行では指定通りに効く。
p {
width:43px;
line-height:4em;
border:1px solid red;
padding:0;
font-size:10px;
}
<p>効く効く<br>
効く効く効かない<img src="dummy" alt="" width="3" height="10">
効かない効く効く効く効く
</p>
…お前ら、事前に質問スレで揉んでから書き込んでください。
>>750 振り分けはXSSIでやればいいんでないか。
そうじゃなければ今やっているようにJavaScriptでやるとか。
これなら、ふだんJavaScriptをオフにしている人もアニGIFを
背景に使っているようなゴミCSSを受け取らなくてすむ。
一応書いておくと、 navigator.userAgent の中に「Opera/7」か
「Opera 7」が含まれていないか調べりゃ分かる。
例えばOpera7かどうかは下記のif文でチェックできる。
if (navigator.userAgent.match(/Opera.7/)) {
>>752=750
> いや、JavaScriptはやってなくてね。
藻前は自分の提示したページのやり方を把握してないのか?
JavaScriptでCSSの振り分けをしているじゃないか。
メインページの方はJSじゃなくて、あのページだけという
のならわかるが
> いや、JavaScriptはやってなくてね。
って、なんだ?
CSS以前の問題として、漏れはIEでもMozillaでもOperaでも
アニメーションGIFのアニメーションはふだんオフにしている。
うざいからオフにしている香具師はそれなりにいる。
>>753 早とちりめ。提示したのは一例であって、自分のページではないぞ。
>>754 ならXSSIでやればぁ。
返事すらまともにできないようだが。
何で喧嘩腰なんだか。
どうも
>>751は、自分の好きでないGIFアニメを使用する人はみな敵視するらしい。
自分が使用できるXSSIはどこでも一般的に使用可能だと思ってるらしい。
エゴティズム。お子さまなんだよね。
すでにスレ違いだ。両方ともどっか行け。
>>756 XSSIができないならできないと書くのは質問者側の役割です。
最初から書いておくべきでしょう。
JavaScriptを避けたいのなら最初からそれも書いておくのは当然だと思いますが。
それらを考慮せずに 相手のことばかり言うのはどんなものでしょう。
確かに無遠慮な書き方を
>>751=753=755はしてますが、あなたはあなた
でたいへん失礼です。
さてここは質問スレではないわけだが。
そゆこと。よそでやってくれ。
761 :
Name_Not_Found:04/02/02 00:27 ID:1i0EDZhq
>>764 回避法が幾つか挙がってるけど、全部試して駄目だったの?
Safari1.2が出たので一通り確認してみた。
間違ってたらスマン。
■未修整(1.2で再現するバグ)
contentプロパティに指定した日本語文字が文字化けして表示される
contentプロパティでopen-quote, close-quote値を無視する
clearプロパティはnone以外の値からnone値に上書きできない
document.styleSheets[n].titleが常にnull値を返す
caption要素を含むテーブルではcol要素に対するスタイルが効かない
固定レイアウトテーブルでセル幅の%値指定時に算出値が不正確
■修正済!(1.2で再現しない)
空白文字のみのテキストノードを正常に取得できない
■未確認(わかんない)
名称に日本語文字を含むフォントファミリの指定を無視する
ファイル名にアンダーバーを含む外部スタイルシートを読み込まない
使用されるはずのないフォントで文字列が表示される
一部のフォントでボールド表示ができない
先に指定した代替スタイルシートを固定スタイルシートとして扱う
:hover擬似クラスでvertical-alignが無効
今週リリースされたばかりの Safari 1.2 です。
* {
color: inherit;
background: transparent;
}
BODY {
color: #000000;
background: #ffcccc;
margin: 1em 10%;
}
こういうようなスタイルを使っていたら、BODY の margin 部分に
背景色が付かなくなりました。ちなみに、全称セレクタはユーザー
スタイルの効果を消すために使っています。どうも、
HTML { background: transparent; }
BODY { background: #ffcccc; }
となっている時に HTML 要素の背景色をキャンバスの背景色として
採用してしまうようです。CCS2 によれば、HTML 要素の背景色が
transparent の場合は BODY 要素の背景色をキャンバスの背景色と
すべきとあります。
この問題は、Safari 1.0 などでは起こりません。1.2 になって
発生するようになりました。
【Opera7.23】
bottom:0;に配置した要素の文字列が2行以上に折り返される場合、要素の下半分がウィンドウ外に隠れる。
#navbar {
position:fixed; z-index:5;
bottom:0; left:0;right:0;
margin-bottom:0;
}
<table id="navbar"><tr>
<th>menu</th>
<td>
<a href="1.htm">menu1</a> <a href="2.htm">menu2</a> <a href="3.htm">menu3</a> ……以下略
</td>
</tr></table>
但し、一度画面を最大化して再読込させてから元のサイズに戻すと、全部表示される。
ウィンドウ・サイズを横か縦かに拡大しても、隠れた部分が現れる。
しかし最初から最大表示にして読み込ませてもやはり隠れてダメで、元のサイズに戻すと現れる。
また、これはtableの問題になるが、上掲のソースで
#navbar td {text-align:right;}と追加指定して、
a要素を列べた後ろにaaaaaaa0000000......と半角英数字を長く長く長く書くと、
その英数字だけが表示されてa要素が消える困った現象が起きる。
【WinIE6標準/互換】
絶対配置でbottomを指定すると、ウィンドウ(表示領域)の最下部からの位置に配置される。
Netscape7.1やOpera7.23ではページの最下部からの位置に配置される。
#navbar {position:absolute; bottom:0; background:yellow;}
<body>
<div id="navbar">bottom:0;でどこに配置されるか?</div>
改行<br>改行<br>改行<br>改行<br>改行<br>改行<br>改行<br>……以下略
</body>
上の例だと、Netscape・Operaはスクロールしないと最下部の#navbarは見えてこない。
しかしWinIEはページの高さに関係なく最初からウィンドウの最下部に表示され、
スクロールすると一緒に上に移って見えなくなる。
772 :
771:04/02/05 17:12 ID:???
あ、ごめん。「ウィンドウ(表示領域)」と書いたけど、「閲覧領域」が正しいかな。
773 :
771:04/02/05 17:15 ID:???
閲覧領域のサイズを初期コンテナブロックのサイズとして扱う
http://cssbug.at.infoseek.co.jp/detail/winie/b130.html >幅や高さを明示していない初期コンテナブロックに対して絶対配置する要素
>は、閲覧領域に対して配置されてしまう。
初期コンテナブロックって、IE標準モードではhtml要素、互換モードではbody要素ですよね?
でも、html, body {height:3000px;width:800px;}とか指定して
幅や高さを明示しても、やはり閲覧領域に対して配置されるままなんですけど。
>>595にも、「html {height:100%;}では表示は変化しなかった」とあります。
delとins要素だけmarginの算出方法が違うってことあります?
Mozillaでなぜか
div#body > * {
margin-left: 10%;
margin-right: 10%;
}
ってやってもinsとdelだけマージンがうまく取れないんですが。
displayがblockになってないのかなぁ。
>>775 バグと関係ない質問みたいだが。仕様書は見た?
insとdelは、前後の文脈次第でブロックレベルにもインラインにもなる特殊要素。
777 :
775:04/02/05 23:09 ID:???
自己解決しました
div#body > *,
div#body > ins > *,
div#body > del > * {
margin-left: 10%;
margin-right: 10%;
}
でOKみたいです。insとdelってなんで特別なんだろう。
778 :
775:04/02/05 23:13 ID:???
ああ、すいません、リロードしないで書き込んでしまいました。
>>776のことは知っていますが、文脈上中にp要素が入っているので
ブロック要素ととしてレンダリングされるべきだと思うのですが、
<div id="body">
<p>foo</p>
<ins><p>bar</p></ins>
<pre>hoge</pre>
</div>
というようなソースでdivの直下のp要素やpre要素ははマージンが取られるのに
ins要素はマージンが取られないのは仕様なのかバグなのか分からなかったもので。
Operaもマージンが取られないんでどうやら私の勘違いだったようです。仕様書
読み直してきます。
DHTML【Netscape7.1 Quirksモード】
ページ内にHR要素があると、スクロール後にそれがチカチカ小刻みに点滅する。
http://pc2.2ch.net/test/read.cgi/hp/1075096787/348-353 参照。
var DOM=document.getElementById;
function always() {
if (DOM) {document.getElementsByTagName('body')[0].style.marginBottom='5em';};
}
if(DOM) {setInterval("always()",50);} // 5秒毎
strictモードでは問題ない。対処法は、わからない。
779追記
document.getElementsByTagNameでスタイル変更するのがbody要素以外だと
点滅バグは起きないみたい。
それにしてもナゼ関係のないHRに影響が出るのやら。
>>775 バグかどうかはわからんけど、
常にインラインとしてレンダリングされてるような。
783 :
782:04/02/06 23:25 ID:???
実体参照で表記した文字が正しく表示されない(6.0)
http://cssbug.at.infoseek.co.jp/detail/winie/b127.html このWinIEバグ、Opera7.23(Win98SE)でも起こる場合がある。
但し文字化けはしない。何も表示されずそこが空白になる。
BODY{
font-family:'文字鏡契冲明朝','CX古典ミン-R','癸羊明朝',MingLiu,"MS 明朝", 'ヒラギノ明朝 Pro W3',"平成明朝", Micho, serif;
}
.unicode {font-family:/*'Lucida Sans Unicode'*/,'Arial Unicode MS', "MS 明朝", "平成明朝", Micho, serif;}
<p><span class="unicode">絓</span>秀実によれば……</p>
上記のソースで'文字鏡契冲明朝'をコメント・アウトするとバグは起きなくなる。
'文字鏡契冲明朝'を持ってないパソコンでもバグは起きないはず。
つまり特定のフォントを親要素に指定してる場合だけ、.unicodeが上書きできなくなるわけ。
Opera以外のNetscape7やIE6ではこのバグは起きず、ちゃんと文字が表示された。
「文字鏡契冲」とは
http://www5a.biglobe.ne.jp/~keichu/mojikeichu.htm
HTMLソースを訂正。↓
<p><span class="unicode">絓</span>秀実によれば……</p>
>>784のバグは、ページの文字コードを
<meta http-equiv="Content-Type" content="text/html; charset=Shift_jis">
を
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
にして、UTF-8で再保存しておいてから、
表示>エンコード>UnicodeでUTF-8を選択すると起きない。
但しページの文字コードをUTF-8にしておいても、エンコード>「自動選択」だと
やはり実体参照した所だけ空白になる。
>>770のOperaバグをDHTMLで解消してみようとした。
すると、新たなバグ(?)が……。
<script type="text/javascript"><!--
var DOM=document.getElementById;
var Opera=(navigator.userAgent.indexOf("Opera")!=-1 && DOM)?1:0;
function alwaysBottom() {
object = document.getElementById('navbar').style;
BCH = document.body.clientHeight;
objH = document.getElementById('navbar').offsetHeight;
if(Opera && object.position!=='static') {
object.position='fixed'; object.top=BCH-objH;
};
if (Opera) document.getElementsByTagName('body')[0].style.marginBottom=objH;
}
if(Opera) {setInterval("alwaysBottom()",50);} //5秒毎
//--></script>
<STYLE type="text/css"><!--
#navbar {z-index:5; left:0;right:0; margin-bottom:0;}
--></STYLE>
これでposition:fixed;bottom:0;を再現できて問題なかったが、
スクロールを一番下まで持ってきた場合だけ#navbar内のリンク・アンカーが効かなくなった。
原因は外部シートで指定してたこれ。↓
body {position:relative;top:0;left:0;z-index:0;}/*NN6.1以降のz-indexマイナス値対策*/
z-index:0;をコメントアウトするか#navbarと同じz-index:5;にするとリンクは有効に戻った。
同じスクリプトをNetscape7に適用しても、このOpera7.23みたいな不具合は起きなかった。
バグではないかもしれないが、一応。
>>787から
if (Opera) document.getElementsByTagName('body')[0].style.marginBottom=objH;
を削ると、Opera7.23でも問題は起きなくなる。
但し
>>779-780のMozillaバグと違ってbody要素へのスタイル指定でもmarginBottom以外では問題ナシ。
従って、削った行の代りに
if (DOM && !N6) document.body.style.paddingBottom=objH;
とすれば意図通りの表示でバグも回避された。
【Netscape7.1】
入れ子になったリスト要素でlist-style-image:none; を無視する。
cf.
http://cssbug.at.infoseek.co.jp/detail/opera/b012.html #nest ul {list-style-image:url(image.gif);}
と指定しておいてから、以下の4通りの上書きを試みた。
#nest ul ul {list-style-image:none;}/*これは無視しない、有効*/
#nest ul li {list-style-image:none;}/*これも有効*/
#nest li ul {list-style-image:none;}/*これが無効*/
#nest li li {list-style-image:none;}/*これも無効*/
<div id="nest">
<ul>
<li>その1
<ul><li>その1.5</li></ul>
</li>
<li>その2</li>
</ul>
</div>
念の為、インライン・スタイルシートで入れ子の中のulやliに
<ul style="list-style-image:none;">
<li style="list-style-image:none;">
と直に指定すると、どちらも有効だった。
ナニコレ?
>>789に追記。
#nest ul li ul {list-style-image:none;}/*これも無効*/
#nest ul li li {list-style-image:none;}/*これも無効*/
#nest ul li ul li {list-style-image:none;}/*これも無効*/
>>770は再現しなかったからか未確認バグの方に登録されましたね。
bottom:0;配置した要素内で折り返された文字列が閲覧領域外に隠れる(7.x)
http://cssbug.at.infoseek.co.jp/detail/opera/b077.html 再現条件がつかめました。かなり微妙です。
上掲URLのページをそのままOperaでローカルに保存、ソースを開いて、
head内に下記を追加しました。
<STYLE type="text/css"><!--
body {position:relative;top:0;left:0;z-index:0;}/*
>>787と同じ */
--></STYLE>
さらにheadかbody中の任意の箇所に下記1行を追加します。
<script TYPE="text/javascript" src="./abcdefghijklmn.js"></script>
これは存在しないjsファイルで結構です。
すると、あら不思議、
>>770のバグが再現しました。
但し、再読込(リロード)すると再現しない。一度どこか別のページを表示してから
この保存して追記したページを表示させると、バグが発現します。わけわからん。
更新、お疲れさま。
>>767のSafari1.2での修正済みと、
>>770後半のtableの問題は、登録漏れかな。
794 :
Name_Not_Found:04/02/08 05:22 ID:5+p0Jns4
http://pc2.2ch.net/test/read.cgi/hp/1074845459/684n 多分IEのバグだと思うし辞典にも未登録だと思う(背景で一覧検索しても
なかった)が「仕様規定外」かもしれないので辞典スレでなくて先にこちらへ
・確認したのはIE6標準モード
インライン要素へ背景画像を指定して repeat-x 表示させた時,
そのインライン要素が2行にまたがる場合に2行目(折り返した後の部分)の
背景が表示されない
Moz1.6とOpera7.23では全部表示される
例:
p { width: 7em; } /* 単に折り返させるためだけに指定 */
em { background: url(wave.png) repeat-x; } /* wave.png は10px*3pxの画像 */
<p><em>あいうえおかきくけこ</em><em>あいうえおかきくけこ</em></p>
例えばブラウザのレンダリングが
|あいうえおかき
|くけこ あいう
|えおかきくけこ
(縦棒は見易さのため)となる場合,IEでは2行目の「くけこ」と3行目の
「えおかきくけこ」の背景が表示されない
また,backgroundの指定にbottomを追加する(本来インライン要素では
background-positionは指定できないが,やってみる)と
IE6では今度は「折り返す前の部分」の背景が表示されなくなる
MozとOperaでは表示される(なお,いずれのブラウザでもbottomに表示してくれる)
やりたかったのは強調語句に(画像で)下波線を引きたかったんだけど
インラインのbg-positionは本来指定できないならバグだろうとなかろうとダメだな
(ブラウザがよきに計らってくれてるから指定しておくという考えもアリかも)
DHTML/NN4.75(Win)
<script TYPE="text/javascript" charset="Shift_JIS" src="abc.js"></script>
<div id="idA">
なんたらかんたら
</div>
これを、
<div id="idA">
<script TYPE="text/javascript" charset="Shift_JIS" src="abc.js"></script>
なんたらかんたら
</div>
と順番入換したら、NN4.7だけスクリプトが動作しなくなった。
スクリプトから抜萃すると、
var NN4=(document.layers)?1:0;
var IE=(document.all)?1:0;
function posit(){
object=NN4?document.idA:IE?idA.style:document.getElementById('idA').style;
……
}
バグではないのかもしれないが、不都合だ。
>>779-780のMozilla Quirksモードのバグは以下のスクリプトで再現した。
外部シートで #navbar {position:fixed;bottom:0;} としておいてから――
var D=document;
var DOM=document.getElementById;
var Opera=(navigator.userAgent.indexOf("Opera")!=-1 && DOM)?1:0;
var IE6s=((navigator.appVersion.indexOf("MSIE 6")>-1) && D.compatMode=="CSS1Compat")?1:0;
var IE=(D.all && !Opera)?1:0;
var N6=(DOM && !D.all && !Opera)?1:0;
var NN4=(D.layers && !DOM)?1:0;
function alwaysBottom() {
object=NN4?document.navbar:IE?navbar.style:D.getElementById('navbar').style;
var top=IE?"pixelTop":"top";
var Body =IE6s?D.documentElement:D.body;
newY=IE?Body.scrollTop:window.pageYOffset;
objH = NN4?0:IE?navbar.offsetHeight:D.getElementById('navbar').offsetHeight;
BH = NN4?0:Body.clientHeight;//:!NN4?Body.innerHeight:0
objY = newY + BH - objH;
var unit=(!N6)?'':'px';
if(!NN4){D.body.style.paddingBottom=objH;};/*これが原因! 問題の行*/
if (newY>-1 && !N6) {NN4?object[top]=newY:IE?object[top]=objY+unit:object.top=BH-objH;};
if(!IE && object.position!=='static'){object.position='fixed'; };
}
if(NN4||IE||DOM) {setInterval("alwaysBottom()",50);}
問題の行を消せばHRの点滅するバグは起きなくなる
しかし、問題の行を切取りして3行前に挿入し直しても、なぜかバグは起きない。謎。
799 :
Name_Not_Found:04/02/09 14:18 ID:rKAW/aKl
trのborderって変えられないの?
>>799 trのボーダーは
border-collapse:collapseの場合のみ。
801 :
Name_Not_Found:04/02/10 10:32 ID:3qJHTSJD
>>800 それはバグなんですか、仕様なんですか。
仕様書読めば。
仕様書読んであげれば。
読んであげれば。
他力本願みっともない。
【Opera7.23 Strictモード】
box-sizing:border-box;を組み合せるとバグ
cf.
http://cssbug.at.infoseek.co.jp/detail/opera/b040.html 初めに、div {box-sizing:border-box;}と指定済みだとする。
div#menu {position:fixed; bottom:0;}
これは下記のDHTMLでtop値を付与したとき同じ表現になる。
var DOM=document.getElementById;
var Opera=(navigator.userAgent.indexOf("Opera")!=-1 && DOM)?1:0;
var N6=(DOM && !document.all && !Opera)?1:0;
if(DOM) {setInterval("alwaysBottom()",50);/*bodyタグ内に書き込む手間を省く*/
function alwaysBottom() {
object=document.getElementById('menu').style;
objH = document.getElementById('menu').offsetHeight;
var unit=(!N6)?'':'px';///*N6strictモード単位必須
if (DOM) {object.position='fixed'; object.top=BH-objH+unit;}
}
ところがこの関数最終行に追記して
if (DOM) {object.position='fixed'; object.top=BH-objH+unit; object.bottom='0';}
とするか、スタイルシートで#menu {bottom:0;}と指定してあるかすると、
オブジェクトdiv#menuが少しづつ動いて画面外に消え去る。
この不具合はOpera7.23でもStrictモードだけで起こり、
Quirksモードでは消え去ってゆかず、ちゃんと閲覧領域底辺に固定されたまま。
MozillaではStrictでもTransitionalでもそんなことは起らない。
setIntervalの代りにsetTimeoutで関数を実行させるとなぜかバグは生じない。
if(DOM) setTimeout("alwaysBottom()",50);
また、これらを使用せずに、ただ
if(DOM) {window.onload = posit;}
function posit(){//……変数定義省略
object.position='fixed'; object.top=BH-objH+unit; object.bottom='0';
}
としても、このバグは起きない。
WinIE6にて。
#id {position:absolute; position:fixed; top:50px; left:0;}
これはposition:fixed;(未実装)に上書きされてposition:absolute;は無効になる。
したがってtop:50px;も効かない。
IE独自拡張のCSS関数構文を使って同じ事を指定してみる。
#id {position:expression('absolute'); position:fixed; top:50px; left:0;}
これだとposition:absolute;として有効、top:50px;に配置される。
なんかヘンですね。
811 :
724:04/02/12 23:48 ID:???
Safariでpositionとかbackground-colorが効いてないとか言ってた者ですが、
自分のCSSを眺めていたら記述ミスに気付きました。
.Navi {
margin: 1em auto;
test-align: center; // IE用 ←
}
/* 昔の癖でコメント記述を間違えてました。Safariは文法エラーが起こると
それ以後全ての宣言を無視するようです。ブロックの最後尾にあったので
MozillaやIEでは影響が出ず、気付いてませんでした。修正したらちゃんと
表示されました…。鬱。 */
812 :
811:04/02/12 23:50 ID:???
2重にミスってさらに鬱。text-alignでつ。
bottom:0;配置した要素内で折り返された文字列が隠れる(7.x)
http://cssbug.at.infoseek.co.jp/detail/opera/b077.html >プログレスバーをページの下部にポップアップ表示させる設定にしているとき、
>ページの末尾までスクロールさせてから再読み込みをすると
この条件は、成立の要件ではないみたいよ。
>>792の通り、そのまま保存したページに
<script TYPE="text/javascript" src="./abcdefghijklmn.js"></script>
の一行を挿入してから、いっぺんどこか別のページを表示したあと
この保存して追記したページを表示させると、バグが発現した。
この場合、再読み込みではバグは起らなくなる。
しかもページの末尾までスクロールさせなくても、常に文字列の下半分が隠れたまま。
プログレスバーを表示させない設定にしても、同じ結果だった。
折り返されない文字列でも下半分が隠れる場合があるね。
ここ↓をOpera7.23で見ると、「右下」の字の上半分しか見えない。
http://cssbug.at.infoseek.co.jp/detail/winie/b130.html プログレスバーを表示させない設定にしても、同じ結果だった。
まあこれは表示倍率を90%から100%にしたら直ったけど。
814 :
晒し:04/02/13 07:14 ID:InFAFPWN
http://www.nurs.or.jp/caution.html 正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
正しい取り引きがされる限りは、たとえ麻薬の売買だろうが売買春だ ろうが構いませんが、
【IE5.0/Win98SE】
link要素でmedia属性を指定してあると、外部シート内の@mediaによる媒体の限定を無視する。
例)
--------------------------------------------------------------------
HTMLでの指定
<link rel="stylesheet" type="text/css" href="style.css"
hreflang="ja" charset="Shift_jis" media="print, screen, projection">
<!--NN4ではmedia属性にscreen以外の値を指定すれば読み飛ばされる -->
--------------------------------------------------------------------
style.cssの中身
@charset "Shift_JIS";
[…略…]
@media print{
#navigation {display:none;}
}
--------------------------------------------------------------------
結果:#navigationが消える。
link要素のmedia属性を@mediaに合せてmedia="print"とだけ指定するか、
link要素にmedia属性を全く指定しないかすれば、
外部シートでの@media指定は有効になり、印刷時には指定通り消える。
media="all"ではダメ。
cf.
http://east.portland.ne.jp/~sigekazu/css/boxm.htm#ua
【IE5.01/Win98SE】
次の「未確認バグ」はWinIE5.0で確認されました。
[1-35]ダイナミックプロパティがフォーム部品に対して正しく効かない(IE5)
http://cssbug.at.infoseek.co.jp/detail/winie/b011.html ------------------------------------------------
次の「未確認バグ」は、別のバグが発現してました。
[2-6]同種要素をネストするとem単位指定の下パディングが無視される(IE5)
http://cssbug.at.infoseek.co.jp/detail/winie/b019.html paddingどころか例示の<div class="a"><div class="a"></div></div>が
傍線も含めて全く表示されません。
親要素である<div class="example">すら表示されません。
しかも再読み込みすると、その直後の要素である
<p>1文字分のパディングを四方に設定しています。</p>
の四囲に、なぜかborderがつきます。これはそのborder-colorから察するに、
どうも直前のdiv.exampleへの指定を引き継いでしまったらしい。
子要素のdiv.aの中を空でなく何か一文字でも入れれば、表示されます。
これだと報告にある通りのバグが確認されますが、
その場合、「親要素の下パディング」だけでなく上パディングも無視されます。
<div class="a"><div class="a">の間に一文字でも入れれば親要素の上パディングは有効になり、
</div></div>の間に一文字でも入れれば親要素の下パディングは有効になります。
【IE5.01/Win98SE】
a:hoverをセレクタにすると { }の中に/*コメント・アウト*/以外の
如何なる文字列を書き込んでも、それが無視すべきものであっても反応する。
例)
リンク要素の親要素に{position:absolute;bottom:0;}だけ指定してある。
a:hover { 12345 }みたいに何ら意味のない記述であっても
リンクにマウス・カーソルを乗せると親tableの幅が変化して横スクロールが発生することがある。
でも空白を無くしてa:hover {12345}なら変化しなかった。
A:hover {color:red; }はバグ起らず、指定の変化のみ。
A:hover {col0or:red; }だと、無視すべきなのに、やはり変化あり。
A:hover {background:red; }ではやはり幅も変化。
シート内にはこれ以外何もスタイル指定してない。
謎だ。
http://cssbug.at.infoseek.co.jp/misc/memo.html (cf.
>>808-809 )
>box-sizingプロパティの値によってbottom (right) プロパティの作用が異なることも原因?
<div style="position:relative; width:100px; height:100px; background:aqua;">
<div style="position:absolute; left:0; right:0; top:0; bottom:0; border:10px solid red; box-sizing:border-box; -moz-box-sizing:border-box;">B</div>
</div>
Opera標準モードでは「下ボーダー外辺と親要素の内容領域の下辺との間に常に20pxの空間が確保される」。
なんでこんなことになるのかがわからない。
box-sizingは、paddingやborderの幅も含めてwidth/heightと見做せって指定ですよね。
それが、なぜwidthは正常なのにheightだけ20px短くなるのやら。
これはこれでCSSバグとしてよいのでは?
Mozillaではwidthも20px短くなるわけだし。
>>820
823 :
Name_Not_Found:04/02/15 23:31 ID:ZKGisPv2
WinIE6.0/Win98SE
h3 { text-align : left ; margin-top : 1em ; margin-left : 7% ; margin-right : auto ; }
p { text-align : left ; margin-left : 9% ; margin-right : auto ; padding : 0.2em ; }
<h3>あいうえお</h3>
<p>かきくけこ</p>
<h3>さしすせそ</h3>
<p>たちつてと</p>
この状況下だと、最後のpがh3のマージンを継承してしまうのですが
(1,2行目は指定通りになる)、IEのバグなのでしょうか?
>>823 同じくWinIE6.0/Win98SEで全く再現されなかったが。
h3のどの辺のmarginを引き継ぐって?
pにもmargin-topを指定してもそれを無視するのかな。
それともmargin-left:9% ;が7%になるのかな。
後者なら僅かな差で画面上明瞭でないはずだから、もっと大きく異なった値を指定して試してみて頂戴。
他にもスタイル指定をしてないかい?
あと、{}内で空白に全角スペースを使ってはいかんよ。
825 :
823:04/02/16 11:27 ID:???
>>824 言葉足らずでした。
margin-leftの値を引き継いでしまいます。
(h3のmargin-leftに30%、pのmargin-leftに70%を指定しても結果は同様となりました)
あと、
h3:first-letter { color:#0000ff; font-weight:bold; }
を指定していました。
重要なところをすっかり忘れていて申し訳ないです。
で、h3のfirst-letterを外したらこの現象が治りました。
お手数かけました。
>>826 HTML 4.01 Strict のDOCTYPE宣言を記述しておきながら,
MAOW とか MAOWe とか訳わからん要素を勝手に定義するなよ。
そういうことをやりたいなら,XML応用でやりなさいよ。
>>828 それも承知しています。
そのため、現在一から作り直しているところです。
以前、xml や xhtml での実装も試みたものの、
xhtml を IE にうまく認識させられなかったことと
Opera が xsl に対応していないことから当時あきらめました。
830 :
Name_Not_Found:04/02/18 00:37 ID:H5ggR5fN
win98、NN6と7の環境でfont-sizeとfont-weightを一緒に使うと
テーブルからはみ出てしまうみたいなんですが
これはバグですか?
<STYLE TYPE="text/css">
<!--
.article {
font-size: 14px;
font-weight: bold;
}
-->
</STYLE>
<TABLE WIDTH="408" BORDER="0" CELLSPACING="0" CELLPADDING="1">
<TR>
<TD WIDTH="406" BGCOLOR="#333333"><TABLE WIDTH="406" BORDER="0" CELLSPACING="0" CELLPADDING="5">
<TR>
<TD BGCOLOR="#FFFFFF">
<DIV CLASS="article">ブラジルのインテルナシオナル、サンパウロ、フラメンゴと名門クラブを渡り歩き、95年に現役ブラジル代表の肩書きを引っさげ入団、セレッソ大阪を支えた現役ブラジル代表ゴールキーパー、ジルマールを特集!</DIV></TD>
</TR>
</TABLE></TD>
</TR>
</TABLE>
…。
猫も杓子もバグ
>>830 boldの分だけ文字幅が拡がったんだろ。
で、なんで無意味に入れ子のtableレイアウトなんかしてるの?
文字サイズをpxで固定するのも感心しない。
だからすぐにバグって言う癖やめろ
バグかと問うて居るのであって、バグだと断じたわけでない。
バグでないならないと教示してやるがいい。
>>836 バグでない証明は仕様を見れば自明。
バグかと騒ぐならどう仕様と食い違っているのかを明らかにせよ。
自分のマークアップ及びスタイル記述に問題があると思うならCSS質問スレにいけってこと。
ここでバグかと問いかけるならそれに準ずる論拠を持ってこいと。
>>837 CSS質問スレにいけって、
>>834は正に質問スレッドだが。
Netscape7.01とMac IE 5.1.6とで表示が異なるとのこと。
どちらかが「仕様と食い違っている」ことになるわな。よく知らんが。
向こうのスレでもそんな結論になってないだろ
要点がつかめてない質問だから放置されてるだけ
放置しないで返答なり批判なり指摘してやれば済む話なのにね。
だから、何をどうバグだと思うのか簡潔に書けよ
「この箇所がバグだと思うのですが」とかやめろ
何を苛立ってるのかなあ。
所詮質問者はわからないから質問するので、それに多くを求めても無理よ。
知識があるなら出し惜しみせずに示してやればよいのだ。
質問者がこのスレに来るなよ
>>845 それは傲慢だな。バグに関する質問ならアリのはず。
実際、相手にされなかった
>>830だって、追試すればバグが見つかったりするのだ。
【Netscape7.1/Win98SE】
.article {
background:yellow;
font-family:monospace;
font-weight: bold;
width:29em;
}
<DIV CLASS="article">ブラジルのインテルナシオナル、サンパウロ、フラメンゴと名門クラブを渡り歩き、95年に現役ブラジル代表の肩書きを引っさげ入団、セレッソ大阪を支えた現役ブラジル代表ゴールキーパー、ジルマールを特集!</DIV>
折返しにかかる「フラメンコ」の「ン」、「ブラジル」の「ラ」の字の右半分が欠ける。
boldを指定しなければこれは起らない。
バグか?
バグでないならないと教示してやるがいい。
ちょっとおもろいなこいつ
>>846は、カタカナでない「ブラジル代表の」の「の」の字は
折返しにかかってても字が欠けないんだよね。ヘンなの。
>>851 OSは? またWin98/Meと2000/XPとで異なるってやつかもよ。
>>852 WinXPIE6
つうか、OS等をはじめに報告すべきは
>>846だろ
つか、フォントしだいだろ
>>846はこれで再現する。
.parent {overflow:auto;}
.article {
font-si0ze: 14px;
font-family:monospace;
font-weight:600;
background:yellow;
width:29em;
}
<div class="parent">
<DIV CLASS="article">ブラジルのインテルナシオナル、サンパウロ、フラメンゴと名門クラブを渡り歩き、95年に現役ブラジル代表の肩書きを引っさげ入団、セレッソ大阪を支えた現役ブラジル代表ゴールキーパー、ジルマールを特集!</DIV>
</div>
overflow:auto;がoverflow:scroll;でもやはり字が欠けるのは一緒。
>853
いや
>>846には既に「Win98SE」と書いてあるが。
フォントも、monospaceだけ指定したらWindowsでは"MS ゴシック"が普通だろ。
>>853 Netscape7.1のバグをIE6で再現しないとか文句つけられてもな……
おしまい
で、
>>834はどうなった? 仕様のどこに該当するのか。
overflowは別問題。親要素でなくてもなるし。
バグかどうか分からないのですがNN7.1で外部スタイルシートで
指定した一番目の要素が無視されてしまいます。IE6では問題ないです。
body {
background:url(background.gif);
font-size:10pt;
}
↑の場合だと背景、文字サイズ共に無視され
body {font-size:10pt;}
body {
background:url(background04.gif);
font-size:10pt;
}
↑のように最初に適当なのを加えると、どちらも反映されます。
それどっか別のところで ; 抜かしたりとかしてるだけじゃねーの?
文法チェッカかけてみれ
>>862 url("background04.gif");
firefox使ってると時々これのせいでやたら見にくいサイトがある。
未確認バグ MacIE
text-alignを指定した要素内で文字列とリンクが機能する位置とがずれる(5.x)
http://cssbug.at.infoseek.co.jp/detail/macie/b051.html 5.2(OSX)と5.1(OS9)で確認しました。
あとこのバグの症状なんですが
>a要素の内容物がある位置とリンクとして機能する(例えばマウスポインタの形状が変化する)位置とがずれてしまうことがある。
ではなくて
>a要素の内容物がある位置とtext-alignプロパティを指定していないときに表示されるであろう位置の両方でリンクが反応する。
が正しい症状です。
あと当然ですが左寄せを指定した場合はなにも起きません。
866 :
865:04/02/24 17:44 ID:???
追記
親要素でtext-alignプロパティを指定した場合にも発生します。
ただし子要素の方でtext-align:leftを指定すると発生しなくなります。
mozilla 1.5あたりから最新のFirefoxまで、
foo, bar, zot {
some-decrarations
}
だとdecrarationsが無視されて
foo {
same-decrarations
}
bar {
same-decrarations
}
zot {
same-decrarations
}
だと通る、というのをついさっき発見したのですけど、これって既知ですか?
これはMozillaの中の人がわるいのですか? それともおいらの書きかたが悪いですか?
Mozilla 1.4.1/IEだとどちらの書き方でもこちらの意図どおりに表示されています。
>>868 すみません。いろいろ試してみたところ、
foo, bar, zotとコロンでつなげるのがまずいのではなくて、
foo, bar, zot. ... という要素の中に A:forcus が入っているとその宣言が無視されてしまう、という症状みたいです。
>>869 forcus って何だ? focus?
意味不明のことが書いてあれば、そこはすべて無視する
仕様だから、Mozillaが正しい。
あー。なるほど。
おいらの持っていたすみけんの本の90ページでA:forcusと書いてあったもんでそのまま打ち込んでました。
お騒がせしてしみません。
WinIEは :focus疑似クラスに対応してない
今試してみてわかったんだが、WinIEは
a:link、a:visited、a:hover、a:active じゃなくて
a:l、a:v、a:h、a:a と書いても効くのか……
>>874 それどころか@importが@iでも効くぞ。
なんじゃこれ…
懐かしい話題やな
>>871 に関して。
未知を、まるで文法違反の如く、無視してしまう例。
abbr, acronym { border : none ; }
を IE が無視するのは、IE のバグである。
何故なら、
- CSS は、マークアップに依存しない。
- それにも関わらず、HTML に限って、未知の要素型にマッチするセレクタが
グルーピングに含まれていると、そのルールを丸ごと無視してしまう、
から。
本来これは、検証時において、エラーにならず、グルーピングを分割して、
abbr { border : none ; }
acronym { border : none ; }
という形で各セレクタがマッチする個々の要素を調べるよう実装された上で、
知っていようがいまいが、<abbr ..> .. </abbr> を見付けたら、ルールを
適用しようと試みなければならない。
次に、検証時の完全なエラーがある。仕様書の例にもある通り、
h3, h4 & h5 { color : red ; }
では、セレクタに & という文法範囲外の文字が使われている。
こういう検証時の完全なエラーは、そのルールを全て無視しなければならない。
仕様書の表現も拝借すれば、各 h3 要素の color は変わらない。
(続く)
(
>>877 の続き)
(以下は、
>>869 の報告を鵜呑みにして書いてある部分があるので注意。)
では、未知の擬似クラスを含むグルーピングを、文法違反の如く、
無視してしまうのはどうなのか。結論から言えば、その実装はおかしい。
綴り間違いの :forcus は、未知であっても決して検証時のエラーにはならない。
現在までの勧告から草案全てにおいて、その :forcus が登場しないから、
意図的にエラーにしているのではないか、と勘繰る事も出来る。
が、それこそまさに蛇足、おかしな実装だ。将来その :forcus
が出て来ない保証は無い (現実には出て来ないだろうが)。
何にせよ、文法違反に該当しないのに、グルーピングごと無視するのは、
間違っている。過去のモジラの実装が正しい。さもなくば、
グルーピングの存在そのものが否定されてしまう。
( IE の場合、未知の擬似クラスを unknown と書き換えるから、
それはそれで大いにおかしい。)
例えば、
p, q, a:forcus { text-decoration : overline ; }
は、
p { text-decoration : overline ; }
q { text-decoration : overline ; }
として解釈されるべきだ。
879 :
878:04/02/25 19:30 ID:???
勢いで書いてしまいましたが、完全にスレ違いですね。
一応、誤解の無いようにしておくと、
>>871 は正しいわけです。
しかし、それでは、ユーザー ( CSS 作者 ) が、常に CSS のレベルを意識して
グルーピングしなければならず、本来、「簡単で楽しい」CSS が、
マニアックになってしまい、好ましくないと思う、と。
即ち、過去のモジラが正しくなるように仕様書を書き換えろ、であり、
現実は、現在のモジラがより正しい ( CSSはマニアックだ )
ということになります。
ともかく、スレ違い、失礼しました。
>>881 867=869=873なのでそれでいいです。
Web製作板ってsageだとID出ないんですね。めったに来ないもんで気づきませんでした。
重ね重ねすまんこってす。
ブロックボックス化した要素を含むリストアイテムの後ろに空行が入る(5.x/6.0)
http://cssbug.at.infoseek.co.jp/detail/winie/b071.html バグ回避法に追加、いいですか。
<ul>
<li><a href="../winie.html" style="display:block;">WinIE目次</a></li>
<li><a href="../winie.html" style="display:block;">WinIE目次</a></li>
</ul>
上の例示ソースを下記の通り改行無しにすると、バグは起きなくなった。
<ul>
<li><a href="../winie.html" style="display:block;">WinIE目次</a></li><li><a href="../winie.html" style="display:block;">WinIE目次</a></li>
</ul>
884 :
883:04/02/26 10:47 ID:???
追記。
これだと、ソースで改行してあってもバグは起きない。
<ul>
<li><a href="../winie.html" style="display:block;">WinIE目次</a></li><li>
<a href="../winie.html" style="display:block;">WinIE目次</a></li>
</ul>
<ul>
<li><a href="../winie.html" style="display:block;">WinIE目次</a></li><li><a
href="../winie.html" style="display:block;">WinIE目次</a></li>
</ul>
要するに、</li>で改行しなければよいのらしい。
この方が実際向きかな。
>>883-884 <ul>
<li><a href="hoge">hoge</a></li><!--
--><li><a href="hoge">hoge</a></li>
</ul>
こうやって改行をコメントアウトしても発生しないよ。
恐ろしくめんどくさいんで実用的じゃないけど。
li a {display:block;}
<li><a href="hoge">hoge</a></li><!-- -->
<li><a href="hoge">hoge</a></li>
では駄目なんだよね。何だかな。
innerHTML で Mozilla と WinIE の
内部ソースを較べると IE の糞さが解かる。
要素間の空白ノードを勝手に取り除くし、
終了タグが正常に補完されなかったりする。
WinIE では絶対にツリー構造が制作者の意図通りにならない。
DOM のノードがおかしいから、CSS の適用にも影響してしまう。
>>887 具体的に個々のバグを挙げて報告してくれると有り難い。
WinIE6で以下の二つを見比べると下のほうが
rtの文字列が右寄りになるのは既出ですか?
=====================================================
<ruby><rb>テストテスト</rb><rt>てすとてすと</rt></ruby>
<br><!-- ただの見やすさのための改行 -->
<ruby><rb>テストテスト</rb>
<rt>てすとてすと</rt></ruby>
=====================================================
つまりブラウザのデフォルトスタイルシートですな。
MozやOpeではデフォルトで表現してくれないので無関係です。
少なくとも最初に
>> WinIE6で
と言っている時点で他のブラウザのことは無関係(少なくとも別件)ですな。
WinIEのrubyに対するデフォルトスタイルシートの話ですから。
ここってデフォルト・スタイルシートまで問題にするスレッドだっけ?
で、同スタイルを他のブラウザで表示の比較をしてみたのかってことなんだが。
誰も同じスタイルを他のブラウザで表現できるかどうかなんて話はしてませんが。
とはいえその一行目は正しそうですね。
>889の件は撤回させていただきます。
ruby {background:red;}
rb {background:blue;}/*効かない*/
rt {background:yellow;}/*Mozillaは効かない*/
改行が多いほど、ruby要素全体の幅が長くなってるのがわかるかね?
但し、二番目と三番目のrt要素の幅は同じ。
<ruby><rb>テスト001</rb><rt>てすと</rt></ruby>
<br><!-- ただの見やすさのための改行 -->
<ruby><rb>テスト002</rb>
<rt>てすと</rt></ruby>
<br>
<ruby>
<rb>テスト003</rb>
<rt>てすと</rt>
</ruby>
Netscape7.1では、ルビ表示のスタイルにしても、そんなことはない。どれも同じ幅。
デフォルトスタイルシートはスレ違いでしょ。
ならNetscape7.1のバグだ。
ruby>rb {display:table-row-group;}
と指定してあると、rb要素へのborderやbackground指定が効かなくなる。
ruby>rt, ruby>rbc+rtc {display:table-header-group;}
と指定してあると、rt要素へのborderやbackground指定が効かなくなる。
あとIE6.0は、なぜかrb要素へのborderやbackground指定が効かない。
どうやら MSIE は未知の要素すべてを空要素として解釈するらしい。
document.getElementsByTagName('/rb');
とすると /rb という謎要素を見事にゲットできる。
document.getElementsByTagName('!')[0].text;
とかするとDOCTYPE宣言をゲットできるというのも有名。
http://pc2.2ch.net/test/read.cgi/hp/1076968824/261n 261 :Name_Not_Found :04/02/26 23:12 ID:???
Win/ie6
<h1>h1-1</h1>
<h2>h2-1</h2>
<ul><li>normal</li></ul>
<h2>h2-2</h2>
<ul><li>おかしくなる</li></ul>
<h2>h2-3</h2>
<ul><li>おかしくなる</li></ul>
上に
h2:first-letter { color: #rgb; }
と擬似クラスを使うとリストがおかしくなるのですが
ここらへんのバグについて、バグる条件や回避策なんかあったら教えてください。
【IE6】
ブロック要素の子要素にclear:right; float:right;を指定してあると空行ができる。
p {
margin:0;padding:0;
clear:right;
float:right;
width:5em; border:solid 1px;
}
<p>1</p>
<p>2</p>
<div><p>3</p></div>
<p style="clear:all;">clear</p>
2と3の間に空行ができる。
IE6だけ。NN7とOpera7.2では間が空かず、123は縦に連続する。
divの四辺いづれかにでもborderを設定したら、空行は消えた。
>>902 :first-letterをかける要素はh2でなくてもブロック要素ならh3でもpでも何でもいいみたいね。
そのブロック要素にwidth:100%;とか何か幅を明示してやると、バグは起きなくなった。
>>887 IEの実装を糞と呼ぶのは結構だが
innerHTMLなんて仕様の標準化されてないもの比較しても意味はない。
それから、DOM2Coreは
構築されるDOMにパーザ依存の差異が生じる可能性を別に否定はしていない。
MacIEバグ
インラインボックス化したli要素に背景色を設定すると内容物が消える(IE5)
http://cssbug.at.infoseek.co.jp/detail/macie/b035.html 症状が正しくないので修正をお願いします。
正しくは以下の通りです。
li要素の背景がtext-alignを指定しなかった場合の位置まで延び、手前にあるli要素を覆い隠してしまう。(結果的に最後のリンクだけ見える。)
その際、隠れた要素は見えないだけでリンクは機能している。(バグ051と組合わさって無数の見えないリンクが発生してしまう。)
ul要素のli要素だけでなくol要素のli要素、dl要素のdt,dd要素全てで発生する。
背景に画像を指定した場合も発生する。
909 :
815:04/02/28 00:13 ID:???
>>903 'clear'
値: none | left | right | both | inherit
初期値: none
適用対象: ブロックレベル要素
継承: しない
パーセント値: N/A
メディア: 視覚メディア
まぁ一応allという値はないぞと。
bottom:0;に配置したボックスの下部が閲覧領域の外にはみ出す(7.x)
http://cssbug.at.infoseek.co.jp/detail/opera/b077.html 「再現できないので」とのことですが、
>>770にあった条件「文字列が2行以上に折り返される場合」をお忘れなく。
<div style="position:fixed; right:0; bottom:0;">固定配置</div>
上記の例示ソースを下記に変更すると、
>>770=
>>813が再現しました。
<div style="position:fixed; bottom:0; left:0; width:6em; background:aqua;">折り返される長い文字列</div>
Opera7.23/Windows98SE にて確認しました。
>>910 まぁそこはbugと関係ないし。
ところで
>>903のbugだが、問題の親divにwidth:100%;と指定したら、
liで括った
>>904のMozillaと似た並び方にされた。borderを指定しても解消しない。
p {margin:0;padding:0; clear:right; float:right; width:5em; border:solid 1px; }
<div>
<p>1</p>
<p>2</p></div>
<div style="border:1px solid yellow; width:100%;">
<p>3</p>
</div>
表示結果は
3 1
2
となる。widthの幅を変更しても、3が左にゆくだけ。
>>910 IEではall=both。
しかし、これは皆間違えるだろうからと余計なお世話でやった事なのか、
それともIE3のbetaテストでallが効かねーじゃねーかボケ!
というクレームがついたからやった事なのだろうか?
後者なら同情するが前者なら本当に余計なお世話だ。
ってことは……と思って、
>>904のliにもwidth:100%;を指定してみた。
すると、Mozillaのbug表示は防げる。
li p {margin:0;padding:0; clear:right; float:right; width:5em; border:solid 1px; }
<ul>
<li>
<p>D</p>
</li>
<li style="width:100%;">
<p>E</p>
<p>F</p>
</li>
</ul>
但し、100%以外だと駄目。
当り前か、幅100%ではfloatで横並びにできず、折返しされるやね。
>>915 clearプロパティーに存在しない値allを指定するとbothとして有効になる【IE6】
――って、これもバグのうちかね?
http://cssbug.at.infoseek.co.jp/detail/winie/b097.html サイズの大きいフロートの上に空白領域が発生する(5.0)
>または幅や高さが指定されたフロート化していない要素を子孫に持つ要素
てのが、よくわからないんですが。
「幅や高さが指定され且つフロート化していない要素」に対する親要素、のこと?
フロート化していない要素を子孫に持つ幅や高さを指定された親要素、のこと?
どちらにも取れます。
でも「CSS/DHTMLバグ辞典スレッド ver2.0」の948には
>b097には「幅や高さを指定した要素の下に」とあるが、「要素の中」でもなるらしい。
と報告されてました。
この報告に基づく記述だとすると、どちらも一致しなくありません?
しかも948は「幅や高さを指定しなくてもなる場合もあるとのこと」と例を出してますし。
もしくは確認していないってことですか?
922 :
919:04/03/01 01:48 ID:???
>>920-921 すいません、言葉が足りませんでした。
これら以外は確認していません。
修正状況の所にMacIE5.1までのことしか書いてないものを5.2で確認しただけです。
>>917 HTML の br 要素型では clear = none | left | right | all だったからね。
928 :
603:04/03/02 14:19 ID:???
制作メモのログ1の方に登録されているようですが、
改めて書きます。
>>603 は確かにCSSのバグです。
MacIEバグリストの方に入れておいてください。
clearプロパティが子孫要素に継承する(MacIE5)
http://cssbug.at.infoseek.co.jp/detail/macie/b015.html 確認してみましたが、これは継承の問題じゃないです。
<div style="clear: left">
<div style="float: left; width: 20%; clear: none">A</div>
<div style="clear: none">B</div>
</div>
このように中の要素すべてに「clear: none」を付けてみても
やはり「B」には「clear: left」が効いています。でも、
<div style="clear: left">
<div>
<div style="float: left; width: 20%">A</div>
</div>
<div>B</div>
</div>
このように、フロートしている「A」の部分を<div>で括ると
「B」はきちんと「A」の横に回り込みます。
つまりこれは、clearが子孫に継承するというバグではなく、
「clearが設定されている要素の子要素に、対応する方向の
floatを設定しても効かない」というバグだと思います。
継承はしないので孫要素なら問題なしです。
# 某はてなダイアリーはclearを設定した div.body 直下に
# floatを設定した img.photo があるので、スタイルをどう
# いじってもMacIEではフロート出来ないんだな。
931 :
908:04/03/02 22:07 ID:???
MacIE 確認済みバグ
インラインボックス化したli要素に背景色を設定すると内容物が消える(5.x)
http://cssbug.at.infoseek.co.jp/detail/macie/b035.html どうやらリスト要素以外でも発生するようです。
<div style="text-align:center;">
<a href="../opera.html" style="background:red"><em>Opera</em></a>
</div>
親ブロック要素にtext-alignを指定し、孫インライン要素を含む子インライン要素に背景を指定すると発生する模様。
ちなみに子インライン要素がa要素の場合はa:hover{background:red}とかでも発生します。
html要素にスタイルを設定できない(5.x)
http://cssbug.at.infoseek.co.jp/detail/winie/b142.html >html要素に対して指定したスタイルはすべて無視される。
>……
>WinIE5.5、WinIE6.0の互換モードで不具合の発生を確認しました。
スタイルすべてではない。
WinIE6.0の互換モードでは例外的に有効となるプロパティがあります。
独自拡張のscrollbar-プロパティーがそれです。
html {scrollbar-face-color: lime;}
これは5.5では無視されても6.0互換モードなら大丈夫。
リンク要素の下線より下にはみ出した部分の文字の色を変えられない(Safari1.2)
a:visited { color: purple; }
a:hover { color: green; }
a:active { color: maroon; }
<a href="">jpg</a>
jやgなどの下線より下にはみ出した部分の色が疑似要素による指定で変えられない。
下線を消しても発生する。
>>936 a要素以外のインライン要素でtext-decoration:underline;を指定した場合は大丈夫なの?
938 :
936:04/03/04 14:30 ID:???
>>936 疑似要素でなくて擬似クラスでは。
あと、ベースラインの位置とディセントの値によるはずだから
フォント(の設計)によって結果が異なるかもね。
2列以上を含むcolgroup要素にwidthが効かない(Safari1.2)
<table border="2">
<colgroup span="2" style="width:7em">
<tr><td>幅7em</td><td>幅7em</td></tr>
</table>
942 :
936:04/03/04 15:18 ID:???
>>940 >疑似要素でなくて擬似クラス
すいません、間違えました。
>フォント(の設計)によって結果が異なるかも
試してみたところ、ヒラギノ系では発生しましたがOsakaでは発生しませんでした。
また斜体したり、筆記体のようなフォントにすると左右にはみ出した部分の色が変わらなくなりました。
>>942 欧文フォントでもなりますか。それとも和文(2バイト)フォントだけ?
945 :
936:04/03/04 16:18 ID:???
>>943 フォントによります。Times New Romanでは発生しました。
またどの部分から色が変わらなくなるかはフォントによって違うようです。
VT100だと下線どころか中心から下半分の色が変わりません。
>>944 Hiragino Maru Gothic Pro
Hiragino Kaku Gothic Pro
Hiragino Kaku Gothic Std
Hiragino Mincho Pro
と指定するとヒラギノになります。W3といった文字の太さは指定できませんが。
>>944 面倒だが,エスケープするという手もある。
font-family: "\30D2\30E9\30AE\30CE\660E\671D\20Pro", serif;
MozillaFireBird0.7(正式版)で確認したバグらしき挙動です。
HTML
<html>
<head></head>
<body>
<div class="menu">
<div class="content">
〜
</div>
</div>
<div class="foot">
〜
</div>
</body>
</html>
CSS
.menu {float: left; width: 50%;}
.content{margin-top: 1em; margin-bottom: 1em;}
.foot{clear: both; margin-top: 5em;}
以上のように記述すると、<div class="foot">の部分に5文字分マージンが
入るはずなのですが、どうしてもマージンが入りません。
IE6SP1、Opera7.23ではマージンが入りました。また、標準モード/互換モード両方でテストしてみましたが、違いはありませんでした。
ソースはかなり省略してますが、これ以外にこの3つの要素に設定しているプロパティは背景色、文字色、ボーダーのみです。
説明不足かもしれませんが、どなたか確認をお願いいたします。
>>941 col要素でもダメですね。この辺はバグが多そうに思います。
という訳で、以下の5パターンで、他のブラウザでもどうなるか
試してみました。
1. <colgroup span="2" style="width: 7em">
2. <colgroup style="width: 7em"><col span="2"></colgroup>
3. <colgroup style="width: 7em"><col><col></colgroup>
4. <col span="2" style="width: 7em">
5. <col style="width: 7em"><col style="width: 7em">
Safari1.2
→ 3, 5 だけ大丈夫。1, 2, 4 はすべてダメ。
(span属性があるとダメみたい)
MacIE5
→ 4, 5 だけ大丈夫。1, 2, 3 はすべてダメ。
(colgroup要素がダメみたい)
Opera6
→ 5 は大丈夫。
4 は1列だけ効くが2列目以降ダメ。
1, 2, 3 はすべてダメ。
(colgroup要素がダメで、span属性は無視?)
Mozilla
→ 1, 2, 3, 4, 5 すべて全く問題なし。
(さすがと言うべきか)
ま、色んなブラウザを考えると 5 の書き方しかない訳ですが、
WinIE や Opera7 などはどうでしょう?
>>948 ありがとうございました。考えていたのとまったく逆だったようです。
勉強不足をお詫びいたします。
CSS バグリスト、未確認 [2-603]
> ブロック化したアンカーの範囲が内容物の部分のみになる(IE5.5)
ですが、IE5.5、IE6.0 両方で確認しました。
再現条件は <div id="navi"><ul><li><a href・・・・ /a></li></ul></div> だとして、
div が float であることです。
なお、a 要素に width: 100% を設定すると回避できるとありますが、
a 要素に padding が設定してあると Gecko 系や Opera で padding 幅分
親 BOX をはみ出します。
また、IE であっても li が複数ある場合、
マウスポインタの位置によってリスト下のマージンが消失したり現れたりします。
こちらで検証した回避策は、ブロック化した a 要素に
position: rerative を指定する事です。
ただし、この策にも欠点があり (IE5.5 の場合・・・・IE6.0 では OK)
white-space: nowrap が指定してあると、ブロック化した a 要素の
頭が padding 分だけ描画されません。
どうしても white-space: nowrap を指定したい場合は
a 要素の親に padding、または border を指定します。
検証ソースは次のレスに記載します。
953 :
952:04/03/04 22:02 ID:???
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "
http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<meta http-equiv="Content-Style-Type" content="text/css">
<title>バグチェック - CSS</title>
<style type="text/css">
#Test { width: 50%; float: left; color: #000; background-color: #666;
border-style: solid; border-width: 1px; border-color: #000;
/* white-space: nowrap; */
}
ul { color: #000; background: #666; }
li {
/* padding: 1px; */
/* border-style: solid; border-width: 1px; */
}
h2 {
/* padding: 1px; */
/* border-style: solid; border-width: 1px; */
}
a { display: block; text-decoration: none; color: #000; background: #CCC;
border-width: 1px; border-style: solid; border-color: #080;
padding-left: 1em;
/* position: relative; */
/* width: 100%; */
}
a:hover { color: #000; background: #FFF; border-color: #F00; }
</style>
954 :
952:04/03/04 22:03 ID:???
</head>
<body>
<h1>A 要素のブロック化におけるバグ</h1>
<div id="Test">
<h2><a href="#">TEST</a></h2>
<ul><li><a href="#">JumpJump 1</a></li><li><a href="#">Jump 2</a></li></ul>
</div>
</body>
</html>
以上。
caption要素があるとcol要素およびcolgroup要素にtext-alignが効かない(MacIE5.x)
<table>
<caption>text-align:rightを指定</caption>
<col span="2" style="text-align:right;width:7em">
<tr><th>右寄せ</th><th>右寄せ</th></tr>
<tr><td>右寄せ</td><td>右寄せ</td></tr>
</table>
>>955 効かないのが正当。captionが無ければ効くのならそっちがバグ。
colgroup要素にtext-alignが効かない(Safari1.2)
<table>
<colgroup style="text-align:right;width:7em"><col><col></colgroup>
<tr><th>右寄せ</th><th>右寄せ</th></tr>
<tr><td>右寄せ</td><td>右寄せ</td></tr>
</table>
>>956 そうだったんですか。
align属性があるんで勘違いしてました。
というかcaption要素があると効かなくなるのはalign属性でした。
お騒がせしてすみませんでした。
tbody要素とtfoot要素の背景を塗る場所を間違える。(MacIE5.x)
tfoot、tbodyの順に背景が塗られてしまう。
<table>
<thead><tr><th>thead</th><th>thead</th></tr></thead>
<tfoot style="background:red"><tr><td>tfoot赤</td><td>tfoot赤</td></tr></tfoot>
<tbody style="background:blue"><tr><td>tbody青</td><td>tbody青</td></tr></tbody>
</table>
960 :
952:04/03/05 10:36 ID:???
>>952 追加です。
div を absolute 指定した場合 (float 指定無し) も発生します。
回避方法は text-align が right 以外の場合のみ同じです。
text-align: right での回避は今の所不明です。
なお、
>>952 に書き忘れましたが OS は Win 系 です。
>>949 WinIE6
→1〜5 すべて問題なし。
(意外?)
Opera7
→1,4,5は問題なし。2,3はダメ。
(colgroup属性がcol属性の子を持ってる場合がダメ)
>>949 の件を検証していて気づいたことですが、
<table border="1">
<colgroup style="width:30em"></colgroup>
<colgroup style="width:7em"><col><col></colgroup>
<tr><td>30em</td><td>7em</td><td>7em</td></tr>
</table>
この場合、一列目は30em幅で二列目と三列目は7em幅になる
はずです。実際、Mozillaではそのように正しく表示されます。
MacIE5やOpera6は
>>949 にある通り、colgroup要素への
列幅スタイルが全く効きませんので、全てauto幅で表示されて
しまいます。
つづく
つづき
問題はSafariで、なんと一列目と二列目が7em幅で三列目が
auto幅になってしまいます。実はこれ、
<colgroup style="width:30em"><col></colgroup>
<colgroup style="width:7em"><col><col></colgroup>
と書くと正しく表示してくれます。ここから、Safariは、
「colgroup要素があると、そこに指定されているスタイルを、
それ以後に出てくるcol要素に割り当てていく。その後、
各col要素に従って各列のスタイルを決める」
というアルゴリズムになっているのではないかと考えられます。
つまり、colgroup/col の親子関係を見ずに、出現順序だけ見て
いる感じ。
そのため、col要素を持たないcolgroup要素があると、スタイル
の適応される列がずれてしまうんだと思います。
さっさと埋めてHTML化させたほうがいいんじゃないのか?
じゃあ埋め。
復活!
970 :
Name_Not_Found:04/03/29 10:26 ID:KUtp7yco
特に問題なさそうだ
(゚д゚)ウマー
(゚Д゚)ハァ?
(゚Д゚)ハァ?
ごめん
(゚д゚)シメジ
(゚Д゚)ハァ?
キノコッノーコノコゲンキノコ
エリンーギマイタケ...