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

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

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

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

Q&A

解決済

5回答

9671閲覧

CSSの<p>タグの改行による隙間を埋めたいです。

退会済みユーザー

退会済みユーザー

総合スコア0

CSS

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

0グッド

0クリップ

投稿2016/10/10 09:39

編集2016/10/11 08:09

イメージ説明
画像のように上の段と下の段でそれぞれ異なったフォントを使用しているのですがその際にどうしてもpクラス分?隙間が空いてしまいます。

これをcssなどを使って簡単に埋められないのでしょうか。
margin-bottom:0;だとダメだったのですが原因は他ということでしょうか。

よろしくお願いします。

【html】 <p class="aaaaaa">aaaaaa</p> <p class="bbbbbbb">テキスト</p>
.aaaaaa{ font-family:arial; font-size:20px; } .bbbbbbb{ font-family:arial black; font-size:60px; }

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

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

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

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

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

guest

回答5

0

ベストアンサー

手元の環境では期待通りに動作するので、指定されたスタイルより詳細度の高いスタイルが別で指定されている気がします。
その場合、対処療法的には !important を付与する手もありますが、詳細度の高いスタイルを書き換えるか、もっと詳細度の高いスタイルを定義する方が正攻法だと思います。

開発者ツールで該当要素に適用されているスタイルを確認してみてください。

HTML

1<style> 2.aaaaaa { 3 font-family: arial; 4 font-size: 20px; 5} 6 7.bbbbbbb { 8 font-family: arial; 9 font-size: 60px; 10} 11 12.aaaaaa, .bbbbbbb { 13 margin: 0; 14 padding: 0; 15 line-height: 1em; 16 border: solid 1px black; 17} 18</style> 19</head> 20<body> 21<p class="aaaaaa">aaaaaa</p> 22<p class="bbbbbbb">テキスト</p>

Re: tanukiodori さん

投稿2016/10/11 07:21

編集2016/10/11 07:24
think49

総合スコア18162

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

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

退会済みユーザー

退会済みユーザー

2016/10/11 08:12

コメントありがとうございます。 まずborderで確かめた結果画像を載せました。(右端が切れているのは気にしないでください。画像制作で見落としただけになります。) なぜか下の上部だけスペースが大きいです。 実際には数字を入れているのですがそれが原因でしょうか。 他のやり方も試してみます。
退会済みユーザー

退会済みユーザー

2016/10/11 08:13

実際の下部に入るのはテキスト→1になります。
think49

2016/10/11 09:16

画像を見せられてもtanukiodoriさんが出された情報から私が「再現できない」ので意味がないと思います。 今まで出た情報から https://jsfiddle.net/s6Lcus8o/1/ で隙間がなくなる事を証明したつもりですが、tanukiodori さんの環境で https://jsfiddle.net/s6Lcus8o/1/ で隙間が出ているでしょうか。 隙間がないのなら今までに出ていない情報に隙間ができる原因があるという事になります。 それを特定して質問本文に追記いただければ、より具体的なアドバイスが可能だと思います。 特定の一助として「開発者ツール」の使い方の参考URLを載せていますので参考にしてみて頂ければ。
退会済みユーザー

退会済みユーザー

2016/10/11 17:18

コメントありがとうございます。 現在https://jsfiddle.net/s6Lcus8o/1/を使用して確認中になります。 情報不足の件申し訳ありません。 また開発者ツールを教えていただいてありがとうございます。 原因が解明できましたらこちらの方に回答含め載せようと思います。
guest

0

ドットとclass名の間に半角スペースが入っていますが、本当に効いていますか?
とりあえずこれをまるっとコピーして指定してみてください。

css

1.aaaaaa { 2 margin: 0; 3 padding: 0; 4 font-family: arial; 5 font-size: 20px; 6} 7.bbbbbbb { 8 margin: 0; 9 padding: 0; 10 font-family:arial black; 11 font-size:60px; 12}

投稿2016/10/10 11:46

gin

総合スコア2722

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

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

退会済みユーザー

退会済みユーザー

2016/10/11 05:31

コメントありがとうございます。 クラス名の半角スペースはこちらのミスです。 実際は半角スペースなしになります。 一応font-familyやfantasizeは効いています。 後ほど質問の該当部分を訂正しておきます。
gin

2016/10/11 05:38

それでmargin:0;などにしてもダメですか~ yamato_hikawaさんの言われるようにline-heightですかね~ それでもダメな場合は、上位でp要素が固められてると思います。 例えば、 ------- #main p { margin-bottom: 10px; } ------- というようなid指定など。
退会済みユーザー

退会済みユーザー

2016/10/11 06:57

コメントありがとうございます。 【line-height:1;】 を指定したら行間自体は詰まりましたがまだまだ希望には遠かったです。 そこでお聞きしたのですが<p>を使って同じフォントで違うサイズをそれぞれ指定することは出来るのでしょうか。よろしくお願いします。
gin

2016/10/11 07:00

可能です。 p要素そのものでやることはおすすめしません。 p要素にclassを振ってそこで指定してください。 というかこれは今普通に↑で書いているやつですね。
gin

2016/10/11 07:03

あと間が詰まらないのは他からのcssが継承されて効いているので、検証ツールでじっくりmarginかpaddingが生きていないか見てみてください。
退会済みユーザー

退会済みユーザー

2016/10/11 07:40

コメントありがとうございます。 説明不足でした。 今それぞれ<p>クラスで分けているから隙間が出ているのでいっそ同じ<p>クラスでフォントサイズだけ1行目と2行目で20pxと60pxみたいな感じで分けれないかと思いましたがちょっと強引な考えでした。
退会済みユーザー

退会済みユーザー

2016/10/11 07:40

検証ツールで地道に探してみます。
gin

2016/10/11 07:47

え?class付けずに「p {margin:0;}」で詰まるんですか??
guest

0

margin, paddingときたらあとはline-heightくらいですね。
上下の文字にそれぞれ指定してください。また、もっと狭めたければpx指定を使えばいいです。

css

1.sample { 2 line-height: 1; 3} 4

投稿2016/10/10 15:00

編集2016/10/11 15:26
yamato_hikawa

総合スコア2092

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

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

0

双方のclassにmargin:0とpadding:0を追加したら如何でしょうか。
それでも駄目ならchromeで画面右クリックから検証を選択して、画面のレイアウトを確認してみてはいかがでしょうか。

投稿2016/10/10 10:00

hirataira

総合スコア29

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

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

退会済みユーザー

退会済みユーザー

2016/10/10 10:39

コメントありがとうございます。双方にmargin:0、padding:0追加しましたがまだ隙間があります。 みなさんはこういう場合どういう風に対処しているのでしょうか。 あとchrome→右クリック→検証ができるなんて知りませんでした! ありがとうございます!
guest

0

今回の問題点はmarginでもpaddingでもなく、フォントの問題でした。

「gerogia」というフォントを使用していたのですがこのフォントの数字が独特の形をしていて上にぽっかりスペースが空いていたのでてっきり<p>クラスによるものだと勘違いしていました。

フォントをarialにしたら解決しました。

もし文字のスペースが埋められない場合はみなさんから教えていただいた方法をもとに以下の手順が個人的にはオススメです。

①:CSSで当該箇所の隙間を0にする。
margin:0;
padding:0;
line-height:1;
一応!importantも。

②:①でダメならグーグルクロームの検証を使って他の要素が入っていないか疑ってみる。

③:①と②がダメならフォントを変えてみる。

これで隙間は埋めれるかもしれません。

投稿2016/10/13 05:25

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問