タグ

CSSとbugに関するdarumenのブックマーク (12)

  • 等幅フォントが使われる要素の扱いがブラウザー間でまちまちな問題

    少し前にFixing browsers’ broken monospace font handlingをNice Web Type経由で読んだんだけど、「単純に初期設定が違うだけだろ……%指定すれば大丈夫じゃね?」とか高をくくってたら大間違いだった。font-size: 100%がうまく動かなかったり、pre要素はともかくcode要素辺りでの実装のずれとか、monospaceだけだとWebKitでおかしくなるバグとかも絡んできてかなりの魔窟のようだ。この記事では触れられていないけど、言語設定によって等幅フォントの初期サイズが違うこともあるので更なるカオス。 記事で最初に挙げられているコードでも良いのだけど、normalize.cssではこの問題への対処がちゃんとなされているので、細かいことは余り考えずにnormalize.css使うのが手っ取り早い。記事の最後に挙げられているコードのように

    等幅フォントが使われる要素の扱いがブラウザー間でまちまちな問題
  • スマートフォンとposition:fixedのバグ

    スマートフォンとposition:fixedのバグ iPhoneではiOS5からAndroidでは2.2からposition:fixedに対応されてスマートフォンでも固定配置が利用できつつあります。と思いきや色々と落とし穴が多いのでまとめておきます。 Androidではuser-scalable=noが必須 <meta name="viewport" content="user-scalable=no" /> Androidではviewportにuser-scalable=noの指定がないとposition:fixedが動きません。iPhoneではuser-scalable=noの指定がなくてもposition:fixedが動きますがけっこう挙動が微妙なのでuser-scalable=noは指定しておいたほうが良いでしょう。 サンプル(user-scalable=noあり) サンプル(us

    スマートフォンとposition:fixedのバグ
  • [CSS]IE6でよく遭遇する6つのバグとその解決方法 | コリス

    CSS Trickのエントリーから、IE6でよく遭遇する6つのバグとその解決方法の紹介です。 IE CSS Bugs That’ll Get You Every Time ボックスモデルのバグ マージンが二倍になってしまうバグ min-width, min-heihgtと同等の指定 Stepdownバグ hover擬似クラスをa要素以外にも対応 透過PNGを透過表示に対応 ボックスモデルのバグ <textarea name="code" class="css" cols="60" rows="5"> div#box{ width:100px; border:2px solid black; padding:10px; } </textarea>

  • IEで絶対配置(position:absolute)のボックスが消えるバグの検証

    先日、友達の依頼で XHTML+CSS のコーディングをしていたところ、position:absolute を指定したボックスが Win版IE6 でのみ表示されないという現象に出くわしました。あちこち調べてみたところ、かなり厄介な IE のバグのようで、消えるときの条件がいろいろあることがわかったので、整理してみたいと思います。 まず最初に見つけたのが、以下のサイト。 » IEで position:absolute した要素が消えるバグ こちらで紹介されているのは、float と clear にはさまれた position:absolute が消えてしまう現象とその対策。でも、私がはまったケースでは、position:abloslute の前には float がありません。紹介されているように clear を追加してみても当然ダメ。う~ん、なぜだ・・・ 日語のリソースを調べてみても解決策

  • IE7用のCSSハックがOpera9.2xにも適用される件 | Blog hamashun.com

    追記 2007-12-21 CSSバグ辞典 Wiki の件を追記 追記:CSSバグ辞典 Wikiの件 CSSバグ辞典 Wiki: Internet Explorer/20071221n01に、関連しそうなバグ情報が追加されていました。 ご注意 CSSハックの使いすぎはあなたのコーディング能力を低下させる原因になります。 用法容量を守って正しくお使いください。 XML宣言の有無で変わる解釈 Webtech WalkerさんでIE7用のハック(*+html body)で指定したスタイルがOperaにも適用されるという記事が公開されていました。 Webtech WalkerさんではWindows版のみの検証だったようなので、Mac版と現在β1である9.50でも検証してみました。 結果は、Mac版Opera9.23では適用され、Windows版Opera9.50β1では適用されませんでした。 もし

  • RedLine Magazine : リストタグを使用時のIEでの変な隙間を消す

    リストタグを使用時のIEでの変な隙間を消す 私的覚え書き。 リストタグを使用してメニューを作ったりする際にIEだけに変な余白が入る事がある。それを解消するネタ。 >>問題のサンプル・こんな感じ。 Firefox等で見るとちゃんとメニューの間が詰まっててOKなのだが、IEの場合だと勝手に余白が入る。marginやpaddingを0にしても、liタグを途中改行しても効果なしで、その都度ごまかしてきたりしてたんだけど、とりあえず原因はIEの場合、リスト内のインライン要素をブロック化すると余計な余白を入れるというかline-heightの解釈が正しくないっぽい。 >>対策はこんな感じ。 li { line-height:0; } a { display: block; background-color:#900; padding: 5px; color: black; text-decoratio

  • RedLine Magazine : IE7のフォント絡みでこんな話があった

    IE7のフォント絡みでこんな話があった Twitter経由でこんなCSSフォントサイズに関するバグを教えて頂きました。(バグと呼ぶのか、仕様と呼ぶのかは分かりませんが)発端はfloralさんのこの発言。 IE7で検証した?http://redline.hippy.jp/lab/css/bodyfontsize625.php 以前このブログで書いたこの記事。 >>RedLine Magazine : bodyにfont-size:62.5%を指定すると・・・ 内容はbodyに対してfont-size: 62.5%を予め指定しておくと、フォントサイズをemで指定する際、12ピクセル相当なら1.2em、16ピクセルにしたいなら1.6emという風にemを使ったフォントサイズ指定が分かりやすくなるよというものでした。 そしてその記事に対して前述の通り、floralさんのポストからIE7だとなにやら

  • 奇数bottomバグ - IE6 | Takazudo Clipping*

    絶対配置でこんな風にすると <div class="Container"> <div class="InsideBox">x</div> </div> .Container{ width:200px; height:101px; background:blue; position:relative; } .InsideBox{ width:30px; height:30px; background:yellow; position:absolute; left:0; bottom:0; } 絶対配置で下付けボックスサンプル IE6ではこんな感じになってしまいます。 何故か下に1px空いてしまうのです。どーやらIE6は、絶対配置をしてbottomを指定すると、親ボックスの高さが奇数の時、1pxあいてしまうという現象があるっぽいです。この場合は、div.Containerが101pxということ

  • ブラウザバグ回避用CSSセットアップ / IEバグ対処フロー | Takazudo Clipping*

    暇だからCSSのセットアップでも載せとく。 CSSレイアウトで問題になるのは、ブラウザごとにバグがあって、それに対応するのにどうするかっていうのが一番困る。でも、ブラウザごとにっていっても、実際に問題があるのは、ネスケ4とかIE4とかMacIEとの当に古いブラウザと、バグの多いけどまだちょっと使っている人がいるIE5、IE5.5、まだまだこれからも高いシェアを続けていくIE6と、かなりましになったけどまだちょっと問題のあるIE7を、なんとかすればいい。逆に言えば、これら以外のブラウザには、フツーに何の仕掛けもなしに、きちんと表示される必要がある。FirefoxとかOperaは、かなりきちんと表示してくれるから。 要するに問題なのはIEばっかりなんだけれど、FirefoxやOperaできちんと表示されていれば、IEでボロボロになってても、大して心配はない。一定の流れでバグ回避をしていけば

  • IE5.xとIE6互換モードがidやclass名の大文字小文字を区別しない件を利用する | Blog hamashun.com

    IE5.xやIE6の互換モードがidやclass名の大文字小文字を区別しないのは、わりと知られています。 これとラクダ式id、class名を使えば、cssの振り分けができるなーとか思いつきました。 ちなみにラクダ式とは、「mainContent」や「subNavi」など2単語以上からなるid、class名を、ハイフンではなく2単語目を大文字にして可読性を上げる書き方の事です。 camelと英語で呼ぶ人もいるとか。 個人的には結構好き。 HTMLCSSのソース /* for modern brow */ #sampleA { color: blue; } /* for IE5 6 */ #samplea { color: red; } <p id="sampleA">ほげほげ</p> これで、IE5.xとIE6互換モードでは文字が赤に、Firefoxなどでは青になります。 なお、他の人が見

  • [CSS]IEで、min-widthやmax-widthを実現する方法

    CSS-Tricksで、IE用に「expression」を使用して、min-width、max-widthを実現する方法がエントリーされていました。 The Perfect Fluid Width Layout デモページでは、最小幅780pxを維持しつつ、最大幅1280px以上になると残りの箇所は背景画像が表示されるようになっています(参照:キャプチャ画像)。 min-width、max-widthの箇所は、下記のように記述されています。 #page-wrap{ background: white; min-width: 780px; max-width: 1260px; margin: 10px auto; width:expression(document.body.clientWidth < 782? "780px" : document.body.clientWidth > 12

  • input要素などにおけるIEのバグ

    input要素などにおけるIEのバグ ちょっと、はまったのでメモ書き IE6やIE7では、margin-leftとwidthが指定されたブロックレベル要素内の行ボックスの先頭にinput要素やtextarea要素がある場合、適切な位置に配置されないというもの。 select要素などは適切に配置される。 CSS p{ margin-left:50px; width:100px; } HTML <p><input type="text" /></p> <p><textarea></textarea></p> <p><select><option>test</option></select></p> サンプル とりあえずmargin値で余白をとるのではなくpadding値を指定することで対応。 関連エントリー operaでのfloatの挙動 IE7でページが表示されない件について IE7用のCS

    input要素などにおけるIEのバグ
  • 1