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

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

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

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

CSS

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

Q&A

解決済

1回答

1295閲覧

li::first-lineを使って、行を揃えたいのですがうまく行きません。

takawork

総合スコア95

HTML

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

CSS

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

0グッド

0クリップ

投稿2020/12/27 09:52

編集2020/12/27 11:54

イメージ説明
ツイッターで見つけたこの方法を使いたいのですが、うまく行きません。
下記のコードを使って文章を書いたのですが、
画像の上のような状態のままで、検証モードで見ても擬似要素のコードが見つかりませんでした。(反映されていない??)
どうしたらうまく擬似要素を使えますでしょうか?
よろしくお願いします。

【追記】
イメージ説明
行を揃えることは出来たのですが、赤い囲みのテキスト部分が左寄りになってしまいました。
赤い囲みを左右中央寄せにしたいのですが、どうしたらよいでしょうか?

【追記2】
イメージ説明

<section class="strength-section"> <div class="strength-section-content"> <div class="strength-box"> <div class="strength-box-content"> <div class="strength-step"> <div class="strength-step-wrap"> <div class="strength-step-box step1 "> <h1>1.あああああああああああ</h1> <i class="fa fa-envelope" aria-hidden="true"></i> <div class="strength-step-box-content"> <ul> <li><i class="fas fa-check"></i>いいいいいいいいいいいいいいいいいい</li> <li><i class="fas fa-check"></i>うううううううううううううううううう</li> </ul> </div> </div> </div> </div> </div> </div> </div> </section>
.strength-section { height: auto; background-color: #045a87; padding: 20px; } .strength-section a { text-decoration: none; } .strength-section-content { max-width: 1140px; margin: 0 auto; } .strength-box { height: auto; border-radius: 40px; position: relative; } .strength-box-content { text-align: center; padding-top: 40px; font-weight: bold; } .strength-box-content p { font-size: 18px; color: #ffcc00; } .strength-btn-container { margin: 20px; } .strength-btn-container a { font-weight: bold; } .strength-btn-container button { border-radius: 20px; padding: 20px; } .strength-step { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; } .strength-step-wrap { padding: 20px; } .strength-step-box { width: 264px; height: auto; border: 4px solid #ffcc00; border-radius: 24px; padding: 10px 20px 6px 20px; min-width: 255px; min-height: 298px; } .strength-step-box h1 { font-size: 21px; font-weight: bold; color: #ffcc00; } .strength-step-box i { font-size: 50px; border: 5px solid #ffcc00; border-radius: 60px; padding: 20px; color: #ffcc00; } .strength-step-box-content p { margin-top: 10px; font-size: 18px; color: #ffcc00; border: 0px solid #ffcc00; padding: 0px; } .strength-step-box-content i { margin-top: 10px; font-size: 18px; color: #ffcc00; border: 0px solid #ffcc00; padding: 0px; } .strength-step-box-content ul { list-style: none; } .strength-step-box-content ul li { font-size: 18px; color: #ffcc00; text-align: left; } .strength-step-box-content ul li::first-line { margin-left: -1em; } .strength-step-box .fa-handshake { font-size: 44px; padding: 20px 16px; }

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

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

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

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

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

guest

回答1

0

ベストアンサー

::first-line (:first-line) - CSS: カスケーディングスタイルシート | MDN

::first-line 擬似要素では、一部の CSS プロパティのみが利用できます。

上記の記述の後に、利用できるCSSプロパティのリストがありますが、margin はありません。

text-indentを使うといいでしょう。
text-indent - CSS: カスケーディングスタイルシート | MDN

css

1.strength-step-box-content ul li { 2 font-size: 18px; 3 color: #ffcc00; 4 text-align: left; 5 text-indent:-.5em; 6}

追記

padding-left で調整してください。

css

1.strength-step-box-content ul li { 2 font-size: 18px; 3 color: #ffcc00; 4 text-align: left; 5 text-indent:-.5em; 6 padding-left: 20px; 7}

別案

text-indent での字下げだと、余白の調整や先頭を揃えたりが面倒なので、
display: flex;でチェックマークとテキストを横並びにする方法を提案しておきます。

css

1.strength-step-box-content i { 2 font-size: 18px; 3 color: #ffcc00; 4 border: 0px solid #ffcc00; 5 padding: 0px; 6 margin-right: .4em; 7 flex-shrink: 0; 8} 9 10.strength-step-box-content ul li { 11 font-size: 18px; 12 color: #ffcc00; 13 text-align: left; 14 display: flex; 15 align-items: flex-start; 16}

CodePenサンプル

投稿2020/12/27 10:40

編集2020/12/27 12:16
hatena19

総合スコア34352

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

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

takawork

2020/12/27 11:04

ありがとうございます。行はうまく揃えることが出来たのですが、テキストが左に行っていまいました。 赤い囲みの部分を中央寄せにするにはどうすれば良いでしょうか?
hatena19

2020/12/27 11:13

回答に追記しましたので、参照ください。
takawork

2020/12/27 11:40

ありがとうございます。最後に1点質問なのですが、チェックマークとテキストの間に余白を持たせたいと思っています。チェックマークのiにpadding-rightを持たせたり、テキストに直接半角スペースを入れたりすると、一行目のみに余白が出来てしまいます。この場合は、どのように余白をとるのが良いですか?
hatena19

2020/12/27 11:48

チェックマークにmargin-rightを設定して調整すればどうでしょう。 .strength-step-box-content i { margin-right: .4em; }
takawork

2020/12/27 11:56

ありがとうございます。早速入れてみたのですが、先ほど相談した通りの挙動と同じく、2行目には余白が出来ないっぽいです。画像を追記させて頂きました。
hatena19

2020/12/27 12:01

リストの text-indent のマイナス値を増やすなどして、左がそろううように調整してください .strength-step-box-content ul li { text-indent:-.7em; padding-left: 20px; }
takawork

2020/12/27 12:09

なるほど、うまく調整出来ました。ありがとうございました!
hatena19

2020/12/27 12:17

回答に別案を追記しておきました。 FlexBoxでチェックボックスとテキストを横並びにする方法です。
takawork

2020/12/27 13:51

別解ありがとうございます!試してみたらこちらの方が、修正が楽でしたので使います!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.31%

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

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

質問する

関連した質問