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

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

ただいまの
回答率

88.33%

Webフォントを利用した入力欄のフォント表示 (ウェイト) をそろえたい

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 996

atpat

score 11

前提・実現したいこと

  • ECCUBE3・デフォルトテンプレートにて、お問い合わせフォームを作成
  • CSSのリセットで、body,input,textarea などすべての要素に「font-family:'icomoon', 'vdl-v7marugothic', sans-serif;」を適用
    (「VDL V7丸ゴシック」、Adobe Fonts のWebフォントです)

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

以上の状態で、入力欄内の文字のフォントのウェイトが揃いません。
お問い合わせフォーム現状

濁点付きの仮名や複雑な漢字だとそうなるのかと思いきや、そういうわけでもないようです。

検索しても同様の例が出てこないので質問させていただきました。
解消するにはどうすればよいのでしょうか。

どうぞよろしくお願いいたします。

試したこと

input, textarea、さらに placeholder に対してフォントを再設定しましたが、改善されませんでした。

input, textarea,
input:placeholder, textarea:placeholder{
    font-family: 'vdl-v7marugothic', sans-serif;
    font-style: normal;
    font-weight: 700;}

補足情報

入力欄以外の、通常の文章などは全く問題なくきれいに表示されています。
通常コンテンツ

ちなみに、ブラウザの拡張機能でスクリーンショットを撮ろうとすると改善されます。
この状態で一発で表示したいのですが…
イメージ説明

補足情報(2)

@yoshinavi さまより返信をいただきました。大変ありがとうございます。
キャッシュクリア (Google Chrome の「キャッシュの消去とハード再読み込み」) の後再確認しましたが、やはり改善なしです。
イメージ説明

試しているうちに気付いたのですが、ECCUBEに買物客としてログイン (⇒ お問い合わせフォームを開くと、自分の情報が自動出力されている) すると一発できれいに表示されました。
イメージ説明

補足情報(3)

@yoshinavi さまより再度返信をいただきました。大変ありがとうございます。

「Adobe Fonts」以外のwebフォント 使用状況
'icomoon'(アイコンフォント) を使っていますが、フォームでは使用しないので、上記CSSで上書きする際は省きました。

google fonts に変えてみる
Googleフォントでは例の現象が起こりませんでした。
イメージ説明
ただ、クライアント様がもとのフォントでOKを出しているので、フォントは簡単に替えられません…

補足情報(最終)

解決いたしました。
自己解決の欄に詳細記載します。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • yoshinavi

    2019/05/27 16:32

    >ブラウザの拡張機能でスクリーンショットを撮ろうとすると改善されます。
    → 現在はどうなのでしょうか?キャッシュクリア等で改善されているのでしょうか?

    キャンセル

  • yoshinavi

    2019/05/27 17:44

    「Adobe Fonts」以外のwebフォントは使用されていますか?その場合の状況はどうでしょうか?

    キャンセル

  • yoshinavi

    2019/05/27 17:46

    仮に、google fonts(CDN)等での使用はどうでしょうか?フォントによるものか、設定によるものかを確認されては如何でしょうか?

    キャンセル

回答 1

check解決した方法

0

よくよく調べてみましたら、以下のことに気づきました:

  • そもそも開発者ツールにて、上記で記載のCSSが反映 (要素に対する設定として認識) されていない
  • ECCUBE の input や textarea には「.form-control」というクラスが付けられている

よって、試しにクラス名も交えて書いたところ

input,
.form-control, 
input::placeholder,
.form-control::placeholder {
    font-family: 'vdl-v7marugothic', sans-serif;
    font-style: normal;
    font-weight: 600;}

解決いたしました。

事前の検索で「input や textarea にはフォントの設定が継承されない」といった主旨の情報を入手していたため警戒していたはずが…。

最初に記載したCSSがなぜ反映されていなかったのか…という疑問は残りますが、ひとまず最大の問題が解決しましたので、「解決済み」とさせていただきます。

何度もデバッグ・解決へのヒントをご提供くださった @yoshinavi さんに心よりお礼申し上げます。

お騒がせいたしました、ありがとうございました。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/05/27 20:47

    コード全体を見ないと何とも言えない部分はありますが、CSSの「詳細度」が絡んでいたのかも知れません。

    「スッキリ」とは行かないかもですが、解決されて何よりです。
    (^^)

    キャンセル

  • 2019/05/28 11:34

    Bootstrap 4 が使われているのでは?
    Bootstrap 4 には .form-control { font-weight: 400; } があります。

    キャンセル

  • 2019/05/28 12:35

    @yoshinavi さん
    この度は大変お世話になりました。
    「詳細度」、内容の方はなんとなく把握しておりましたが、名称は今回初めて知りました。ありがとうございます。
    ただ、デベロッパーツールでは、「優先順位にかかわらず、その要素にかかわるすべてのCSS設定が記載されたうえで、上書きで無効化されたものは打消し線で表示される」という仕様だったと思いますので、そこに記載すらされていなかったのは何故か…上書きが多すぎるとダメなのか…
    引きずっても仕方ないので、後々の宿題にします。
    本当にありがとうございました。

    @x_x さん
    コメントありがとうございます。
    たしかにECCUBE3は、デフォルトテンプレートでBootstrapが使われていますね。そのこと自体は把握していたのですが、「.form-control」のクラス名はBootstrap由来なのですね。
    ※ちなみにデベロッパーツールで確認したところ、「.form-control」該当の記載はECCUBE3デフォルトテンプレートのほう (style.css) に記載があるようです。Bootstrapバージョンも3でした。
    Bootstrapはまだまだ未知の存在なので、調べる良い機会になりました。
    ありがとうございます。

    キャンセル

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

  • ただいまの回答率 88.33%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る