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

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

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

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

CSS

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

Q&A

解決済

1回答

6716閲覧

大きさの違う文字をvertical-align: text-bottomで中央揃えにしたい

nomura02

総合スコア133

HTML

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

CSS

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

0グッド

0クリップ

投稿2020/08/06 07:13

編集2020/08/06 08:31

前提・実現したいこと

大きさの違う文字を中央に並べて、
小さい文字を大きい方の文字の下に揃えたいです。

発生している問題・エラーメッセージ

要素が真ん中に行ってくれません…

該当のソースコード

html

1<div class="points"> 2 <span class="num">30</span> 3 <span class="point"></span> 4</div>

CSS

1.points { 2 margin: 0 auto; 3} 4 5.num .point { 6 vertical-align: text-bottom;

試したこと

ほか、

CSS

1.num .point { 2 vertical-align: text-bottom; 3 text-aline: center;

もだめでした

今やってみたこと

p要素にしてみました。。

html

1 <div class="box"> 2 <div class="points"> 3 <p class="num">30</p> 4 <p class="point"></p> 5 </div> 6 7 <div class="comment"> 8 <span>文字文字文字文字文字<br> 9 文字文字文字文字文字文字文字文字</span> 10 </div> 11 </div>

CSS

1 2.box { 3 font-family: "Sawarabi Gothic", "Yu Gothic Medium"; 4 border: solid 10px #FFF; 5 border-radius: 10px; 6} 7 8@media (max-width: 667px) { 9 .box { 10 max-width: 335px; 11 border: solid 5px #FFF; 12 } 13} 14 15.box .num { 16 font-size: 160px; 17} 18 19@media (max-width: 667px) { 20 .box .num { 21 font-size: 80px; 22 } 23} 24 25.box .point { 26 font-size: 100px; 27} 28 29@media (max-width: 667px) { 30 .box .point { 31 font-size: 50px; 32 } 33} 34 35.points { 36 display: -webkit-box; 37 display: -ms-flexbox; 38 display: flex; 39 -webkit-box-pack: center; 40 -ms-flex-pack: center; 41 justify-content: center; 42} 43

なんとか真ん中にいってくれましたが、
今度は小さい方の文字が、上に寄ってしまいます。

どうぞ、お時間ありましたら
助けて頂けますと幸いです。
よろしくお願いします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

こんにちは。

これでいかがですか?

css

1.num, .point { /* カンマ忘れています。 */ 2 vertical-align: baseline; 3 /* vertical-align: text-bottom; */ 4}

CSSのインライン配置の分かりにくい仕様については、以下の記事がかなりわかりやすいです。

Deep dive CSS: font metrics, line-height and vertical-align - Vincent De Oliveira

コメントを受けて追記

サンプルを作りました。

css

1.points { 2 text-align: center; 3}

投稿2020/08/06 07:59

編集2020/08/06 08:30
Lhankor_Mhy

総合スコア36089

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

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

nomura02

2020/08/06 08:14

ありがとうございます。 まだ解決してないです… カンマいれて、テキストアラインセンター、 ではないんでしょうか? paddingとか…
Lhankor_Mhy

2020/08/06 08:26

横方向に中央揃えもするのですか?
nomura02

2020/08/06 08:29

今修正してみたんですけども、 「  30点  」 と真ん中に動いてほしいのです…
nomura02

2020/08/06 08:32

インライン要素のままの方が良かったですかね… 今やってみます!!!ありがとうございます
Lhankor_Mhy

2020/08/06 08:33

ああ、ブロック要素でやりたかったのですね…… ちょっと考えなおします。
nomura02

2020/08/06 08:36

いえ!!でもうまく行きました!!! ブロック要素だとまたややこしくなりそう… 小さい文字の方を、大きい「30」の下辺にあわせなくちゃいけなくなるという事態がまた発生してしまいます… 後学のために知りたい気もしますが、取り急ぎ、インライン要素で、 孫要素をバーティカルアライン ベースライン、 子要素をテキストアライン センター で、思ったようになりました。
Lhankor_Mhy

2020/08/06 08:38

なるほど、ひとまずご解決されて何よりです。
nomura02

2020/08/06 08:39

助かりました!!!ありがとうございます????
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問