質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

2回答

410閲覧

CSSリセットにすると、display:inlineでもvertical-align:middleにしてdiv要素内の文字を上下中央に配置できない。

退会済みユーザー

退会済みユーザー

総合スコア0

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2018/01/24 15:46

編集2018/01/24 18:39

でCSSリセットをすると、display:inlineでもvertical-align:middleにしてdiv要素内の文字を上下左右中央に配置できません。

またCSSリセットのせいか、display:flex;のせいか分かりませんが、div要素内のpaddingのどこかをautoの設定にすると、paddingが突然効かなくなります。
これは仕様でしょうか?
以下はコードです。
CSS

*{ margin:0; padding:0; } #yoko{ display:-webkit-flex; display:flex; border:solid 1px #CCC; padding:20px 10px 20px auto; }

HTML

<div id="yoko"> <div> testtesttest </div> <div> <img src="images/hoge.jpg" alt="test" /> </div> </div>

vertical-alignの問題
CSS

*{ margin:0; padding:0; } #wapper{ width:900px; margin:20px auto; } #header{ margin:20px auto; padding:15px 20px; border:solid 1px #CCC; } h1{ color:green; font-size:58px; } #contents{ border:solid 1px #CCC; padding:10px; overflow:auto; } #left{ float:left; width:45%; } #manner{ margin:0px 10px 20px 10px; border:double 5px blue; overflow:auto; padding:5px; } #manner div{ float:left; width:70%; } #manner img{ float:right; width:25%; height:auto; margin-top:5px; } #syacho3{ margin:auto 10px 20px 10px; border:solid 1px blue; overflow:auto; padding:5px; } #syacho3 img{ float:left; width:25%; height:auto; margin-top:5px; } #syacho3 div{ float:right; width:70%; } #rina3{ margin:auto 10px 20px 10px; border:solid 1px blue; overflow:auto; padding:5px; } #rina3 div{ float:left; width:70%; } #rina3 img{ float:right; width:25%; height:auto; margin-top:5px; } #syacho4{ margin:auto 10px 20px 10px; border:solid 1px blue; overflow:auto; padding:5px; } #syacho4 img{ float:left; width:25%; height:auto; margin-top:5px; } #syacho4 div{ float:right; width:70%; } #right{ float:right; width:45%; } #keigo{ overflow:auto; } #keigo img{ display:block; margin:auto; height:420px; } #sodan{ border:solid 1px blue; overflow:auto; margin:20px auto auto auto; padding:5px; } #sodan div{ float:left; width:70%; } #sodan img{ float:right; width:25%; height:auto; margin-top:5px; } #footer{ clear:both; display:inline; vertical-align:middle; border:solid 1px #CCC; text-align:center; margin-top:20px; }

HTML

<!DOCTYPE html> <html> <head> <title>無題ドキュメント</title> <link rel="stylesheet" type="text/css" href="style1.css"> </head> <body> <div id="wapper"> <div id="header"> <h1>test</h1> <p>testは、~です。</p> </div> <!--header_end--> <div id="contents"> <div id="left"> <div id="manner"> <div> <p> あかさたなは2まやらわ1あかさたなはまやわあかさたなはまやらわあかさたなはまや わあかさたなはまやらわ </p> </div> <img src="images/lake1web.jpg" alt="見本" /> </div> <!--manner_end--> <div id="syacho3"> <img src="images/lake1web.jpg" alt="見本" /> <div> あかさたなはまやらわ </div> </div> <!--syacho3_end--> <div id="rina3"> <div> あかさたなはまやらわ </div> <img src="images/lake1web.jpg" alt="見本" /> </div> <!--rina3_end--> <div id="syacho4"> <img src="images/lake1web.jpg" alt="見本" /> <div> あかさたなはまやらわ </div> </div> <!--syacho4_end--> </div> <!--left_end--> <div="right"> <div id="keigo"> <img src="images/lake1web.jpg" alt="見本" /> </div> <!--keigo_end--> <div id="sodan"> <div> あかさたなはまやらわ </div> <img src="images/lake1web.jpg" alt="見本" /> </div> <!--sodan--> </div> <!--right_end--> <div id="footer"> 株式会社トラスト </div> <!--footer_end--> </div> <!--contents_end--> </div> <!--wapper_end--> </body> </html>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kei344

2018/01/24 15:49

「リセット」は提示のものだけでしょうか。「突然効かなくなります」についてはコードを提示してください。
退会済みユーザー

退会済みユーザー

2018/01/24 16:02

リセットは提示のものだけです。
kei344

2018/01/24 17:35

回答が付いた質問の編集は慎重に行ってください。質問文のコードについて回答にて指摘があった場合は「追記」し、元のコードを編集する場合も「直したこと」がわかるようにしてください。
kei344

2018/01/24 18:18

バッククオート3つの前後には改行を入れてください。PCであれば記入エリアの右部分あたりにリアルタイムに結果が表示されていると思うので、そこを見ながら調整してください。
guest

回答2

0

ベストアンサー

よくやる勘違いですが, vertical-alignプロパティは(そのまま)親要素に対する文字列の縦位置を指定するものではありません.

vertial-alignプロパティは適用する要素のdisplayプロパティ値によって意味合いが変化します.

  • display:table-cellの場合

直感的な意味合いでの「上揃え(top)」「中央揃え(middle)」「下揃え(bottom)」を指定します.

  • それ以外の場合

文字列の**基底線(baseline つまり文字揃えの縦位置の基準)**を親要素のどの基底線に合わせるかを指定します.

参考
https://developer.mozilla.org/ja/docs/Web/CSS/vertical-align

投稿2018/01/24 19:11

defghi1977

総合スコア4756

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

padding:20px 10px 20px: auto; この時点で記述が間違っています。
少なくとも padding:20px 10px 20px auto; こう書くべきです。(autoは値として不適ですが)

また、margin と違い paddingauto はありません。

【padding - CSS | MDN】
https://developer.mozilla.org/ja/docs/Web/CSS/padding

【margin - CSS | MDN】
https://developer.mozilla.org/ja/docs/Web/CSS/margin

投稿2018/01/24 17:30

kei344

総合スコア69398

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/01/24 17:37

ありがとうございます。 paddingにautoがないののはじめて知りました。 引き続き、vertical-align:middle;の方も質問を受け付けます。
kei344

2018/01/24 17:39

問題がおこるコードを載せるくらいはされてはいかがでしょう。
退会済みユーザー

退会済みユーザー

2018/01/24 17:46

すみません。 説明すると課題は家に持って帰ってできないのでコードを直接貼ることはできないです。 かすかな記憶で貼ることもできますが、言葉で説明した方がいいかなと思いそうしました。
kei344

2018/01/24 17:51

では言葉で説明しますが、書き方の問題です。 HTMLとCSSはブラウザがあればいくらでも書いて試すことができるので、問題が起こる状況を再現して質問文に提示してください。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問