既存サービスのCSSがどうしても効かない → 正常動作する最小構成の単体デモを作成し、移し替える

CSSCSSトラブル対応

目次一覧

 状態:-  閲覧数:176  投稿日:2020-04-11  更新日:2020-04-12
問題発生 / どうしても解決できない / 最終的な対応

今回(最終的に)実行した手順 / CSSトラブル時の対応はプログラミングと同じ / 問題と思われる箇所を特定


問題発生 / どうしても解決できない / 最終的な対応

 閲覧数:69 投稿日:2020-04-11 更新日:2020-04-11 

問題発生


既存WebサービスのCSSがどうしても効かない

具体的には?
・モバイル表示する際だけ、h1タグが真ん中に表示されない
・モバイル表示する際だけ、headerタグ内のh1、h2、pタグの縦間隔が意図せず空いてしまう

どんなCSSなの?
・Animate.cssを利用しているJavaScriptライブラリ
・CSS の visibility プロパティや、 transform プロパティ を多用している
・何を行っているか理解できていないCSS

どうしても解決できない


色々試してみるも挙動を理解できない
・「font-size:2rem;」までは期待した通り動作するが、「font-size:2.6rem;」以上にすると、上記通りの異常挙動となる
・marginにマイナス指定したりしてみたが、モバイルで期待した通り表示されてもパソコンでおかしくなったり、その逆パターンだったりして、期待した結果を得られない
※メディアクエリは真っ先に確認したが、それらしい記述は見当たらない

Chromeデベロッパーツール(検証モード)を使用しても解決できない
・そんなはずはないと思われるかもしれないが、どうしても解決できない
・JavaScriptを利用して、ループでアニメーションさせているから?

最終的な対応


正常動作する最小構成の単体デモを作成し、移し替えた

考え方
・正常動作しないコードの原因を追究することは大変難しい
・正常動作する最低限のコードを作成し、そこから機能追加していく方が(精神的にも)楽

今回(最終的に)実行した手順 / CSSトラブル時の対応はプログラミングと同じ / 問題と思われる箇所を特定

 閲覧数:75 投稿日:2020-04-11 更新日:2020-04-12 

今回(最終的に)実行した手順


最初に考えたこと
ライブラリの問題があるのでは?
→ ライブラリのデモを改めて確認したみたが、正常動作している

1.ライブラリを改めてダウンロード

2.単体デモを設置する
モバイルでも正常動作することを確認する

3.単体デモを最小構成にする
・不要な記述を全て削除
・最低限必要なものに限定する。出来るだけシンプルに!

4.単体デモを既存Webサービスにコピペする
・単体デモのhtmlとcssを既存Webサービスにコピペする
・モバイルでも正常動作することを確認する

5.「既存Webサービスへ追加した単体デモコード」を拡張していく
・「既存Webサービスで正常動作しないコード」を、「既存Webサービスへ追加した(正常動作する)単体デモコード」へ一つずつ追加していく
・一つ追加する度に、モバイルでも正常動作することを確認していく

CSSトラブル時の対応はプログラミングと同じ


最小構成の単体デモを作成し、動作確認していく
・原因が複数考えられる場合は、(面倒でも)一旦最小構成の単体デモを作成し、そこから動作確認していく方が結局は早く解決する(ことが多いと思われる)

動作しない環境で苦労するよりも
動作する環境を用意し、そこへ追加していく(方が早く解決するかも)

問題と思われる箇所を特定


原因不明だが、問題と思われる箇所を特定(2020/4/2 19:03)
h1タグ内やh2タグ内に改行を入れていると、モバイル表示時に意図しない結果となる

なぜ?
html改行 と 表示 の関係性は?


「position:sticky;」がどうしても効かない → <header>を一旦削除してみる → <header>に「display:inline;」を指定

「正常動作する最小構成単体デモ」と挙動が異なる理由は、<div><div>の処理方法が、htmlの複雑さで異なるから



類似度ページランキング
順位 ページタイトル抜粋
1 「正常動作する最小構成単体デモ」と挙動が異なる理由は、 36
2 CSSがどうしても効かない → 該当CSSの読込可否 → 該当CSSの反映可否 34
3 作成した素材がどうしても見つからないときは、「png形式」を疑ってみる 34
4 Chromeデベロッパーツールで、スマホソースコードを確認したいが、USBデバッグ機能をどうしても有効にすることが出来ない 33
5 「:hover」「z-index」を組み合わせて使用すると、正常動作しないことがある 31
6 「レイアウト崩れ」がどうしても解決しない → Chrome「デベロッパーツール」で怪しいと思った要素を、正常表示されるまで削除し続けていく 31
7 IE8で、フォームの縦位置がどうしても真ん中にこない場合の、最後の手段(案) 28
8 背景画像がどうしても表示されない → 「clear:both;」を挿入してみる 28
9 Chrome プロファイルが壊れている、と毎回表示されるが、英語なのでどうしたら良いか分からない 27
10 レイアウトがどうしても崩れるときは、div marginへマイナス値が設定されていないか、確かめる 27
11 「兄弟要素の兄要素を選択するCSSセレクタ」は存在しない 26
12 Braveインストールしてみたけれども、全ての広告を必ず非表示に出来るわけではないみたい 26
13 使用していないCSSをチェックする、標準的な方法を知りたい 26
14 Twitter ヘッダー画像は、Fireworks CS3 で作成している 26
15 プルダウンメニュー(セレクトボックス)要素を右揃えしようと思ったけど、出来なかったのでメモ 26
16 navタグで定義している部分だけCSSが効かない【html5】 25
17 JPEG画像ファイルコピーを繰り返しても画質は劣化しない。画質が劣化するのは上書き保存する場合 25
18 「Google Chrome を起動後、100%の確率で3分以内に落ちる」場合は、アンインストール後インストールし直すしかない 25
19 Illustrator間で、ベクターデータコピーがどうしても出来ない場合は、Illustrator複数起動を疑う 25
20 Firefox7 「このサイトのパスワードを保存しますか?」を非表示にする(案) 25
2021/7/24 20:36 更新
週間人気ページランキング / 7-17 → 7-23
順位 ページタイトル抜粋 アクセス数
1 RGB ⇔ Lab | 色変換(色) 53
2 血の色 / #b30000 / #360800 / #ff0000 | 色 26
3 Design 0 23
4 Windows10で「Google Chrome」が常に最前面に表示される。「アクティブウィンドウ」が最前面で表示されない → 解決方法存在しない | Google Chrome(ブラウザ) 17
5 HTML5では、「input 要素」「button 要素」を「フォームタグ」の外で直接記述しても良い | HTML5(HTML) 15
6 HSLとHSVの違い | 色変換(色) 14
7 「マウスオーバー」「ロールオーバー」「ホバー」の違い | CSS 13
8 「bgcolor」「background-color」「background」の違い | CSS 12
8 「CSSキーフレームアニメーション」実行後のCSS設定 | アニメーション 12
9 RGBの種類 / ビットカラー | RGB(色) 11
10 画面キャプチャ | Chrome 拡張機能(ブラウザ) 9
11 「overflow」効果を打ち消すスタイルシートは、「overflow: auto;」 8
11 「:hover」「z-index」を組み合わせて使用すると、正常動作しないことがある | z-index(CSS) 8
11 Chrome でキャッシュを効かさない | Google Chrome(ブラウザ) 8
12 16進数カラーコード / 2進数 7
12 コズミックブルーが何色か分からない | 色 7
13 使用していないCSSをチェックする、標準的な方法を知りたい | CSS 6
13 100/7%ではなく100%/7。(100/7)%ではなく(100%/7) | CSS 6
13 グラデーション練習 | Fireworks 8(Fireworks) 6
13 「属性」「プロパティ」「アトリビュート」の違い | CSS 6
2021/7/24 1:01 更新