WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:Q:css:whitespace pre で非互換

0:[投稿] ふくし [MAIL] [2002/02/23 19:24 ][環境:WIN+IE WIN系+OTHER]

ここでははじめまして。よろしくお願いします。
客から翻訳を頼まれた HTML が、不具合で困っています。
どういう不具合かというと、
段落がブラウザの端で wrap せず、改行までひとつながりで表示されます。
以下の条件がそろうと発生します。

 ・<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "xhtml1-transitional.dtd">
  で始まる
 ・<table> の中で <span class="code">~</span> を使って文字を修飾している
 ・stylesheet(今回は content.css)の code クラス定義で
  white-space:pre;(ホワイトスペース文字で改行しない)が定義されている
 ・IE6 でブラウズする(NC、NE5以下ではオッケー)

<span class="code">~</span> の変わりに
<code>~</code> だと大丈夫ですが、
それだと字がちょっとちっちゃくなります。

code クラス定義で white-space:normal にするといいようなものですが、
その場合、<div class="code"> の時まで(この場合は pre になって欲しい)
normal になってしまいます。

ここまで書いて思ったんですけど、
div 用の定義と span 用の定義を名前を変えて使い分ければいいのかなー、、?
でも、IE6 だけの現象のためにそこまで客の HTML をいじっていいものか。
(英語版からしてこの不具合が起こっているのだからほっとけばいいのかな、、?)

美しい解決法、この問題の本質、その他何かわかりましたらご教示ください。


1:[回答] えび [2002/02/23 20:35 ]

 何が不具合なのか良くわからないのですが、「code クラス定義」とやらはどうなっていますか。

.code{white-space: pre}

 であれば div class="code" にも適用されて当然だし、

span.code{white-space: pre}

 が div class="code" に適用されているのならそれはブラウザのバグでしょう。


2:[質問] ふくし [MAIL] [2002/02/23 22:58 ]

聞き方が悪かったようでもうしわけありません。
.code{white-space: pre}
になっています。
div class="code" に適用されていることを不具合と思って
いるわけではありません。
span class="code" を含む行がブラウザからはみ出して見える、
それも NC4、6、IE5 では見えないのに IE6 では見えるのが
問題なのです。

 こんにちは。この文は<span class="code">code</span>を含んでいます。

という文があったとして、NC4、6、IE5 では

 |こんにちは、この文はcodeを|
 |含んでいます。      |

と表示されるのに、IE6 では

 |こんにちは、この文はcodeを|含んでいます。
 |             |

と表示されます。IE6 では横スクロールしないと文は見えません。

でもえびさんのおかげで、class の適用範囲を css で
定められることがわかったので、
div.code{white-space: pre}
span.code{white-space: normal}
のように分ければいいかもしれないですね。


3:[回答] 播磨王 [2002/02/23 23:44 ]

><span class="code">~</span> の変わりに
><code>~</code> だと大丈夫ですが、
>それだと字がちょっとちっちゃくなります。

codeのスタイルを明示すればよいだけではないかと。


4:[質問] ふくし [MAIL] [2002/02/24 00:29 ]

>播磨王さん
<span class="code">の代わりに
<code>を使い、<code>のアトリビュートでポイント数を明示する、
ということでしょうか?
なるほど、それもありますね。
でもHTMLにポイント数が明記してあるとcssの意味がなくなるかも、、。
いずれにしても、ありがとうございます。

IE5と6で挙動を変えたというのはMSが方針を変えたのでしょうか?
でも、新しい動作の方がヘンですよねえ。


5:[回答] hama [2002/02/25 17:13 ]

code {font-size:100%}


6:[回答] 匿名希望 [2002/02/25 20:21 ]


例 )
*{.....}
span{.....}
span.code{.....}

のようにその <span class="code"></> に適用されて然るべき記述全てを書いて質問しなきゃ話は始まらんと思うよ。カスケイドなんだから。

そもそも display の値にさえ触れることなく話が進んでいるのはおかしい。

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World