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

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

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

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML

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

CSS

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

Q&A

解決済

1回答

2236閲覧

【CSS初心者】文字の縦書き+極小フォント+絶対位置の共存について

konichiwa

総合スコア7

CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML

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

CSS

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

0グッド

0クリップ

投稿2018/06/05 16:01

前提・実現したいこと

konichiwaと申します。
WEB超初心者なので的を射た質問ができないかもしれませんがお許し下さい。
縦書きの雑誌風WEBサイトを作っていて二進も三進もいかなくなってしまいました。
実現したいスタイルは以下の通りです。「→」の部分は実際に適用している内容です。

  • 背景に画像を配置
  • 背景画像は常に左右の中心揃え、ウィンドウの幅に応じて拡大/縮小(最大1000px)
→ページ全体に { max-width: 1000px; margin: 0 auto; padding 0; }
→imgタグに { max-width: 100%; height: auto; } を適用
  • 画像にマッピングでリンクを配置

→imgタグにhtmlのusemapを使用、jqueryのrwdImageMapsを使用

  • 画像の上にテキスト
→背景画像を親要素にして { position: relative } を適用
→テキストを子要素にして { position: absolute; top: 20; left: 30; } を適用して位置を指定。
  • テキストは縦組み
→テキストに { -ms-writing-mode: tb-rl; writing-mode: vertical-rl; } を適用
  • テキストは極小フォント(画像とともに拡大/縮小)
→テキストに { font-size: 4vw; -webkit-transform:scale(0.1); -moz-transform:scale(0.1); -ms-transform:scale(0.1); -o-transform:scale(0.1); transform:scale(0.1); } を適用

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

テキストの縦組み、transform:scaleでの極小文字、その拡大縮小はうまくいくが、
position: absoluteを使用したtop,leftの位置指定が機能しません。
Google Chromeにてプレビューし、DevToolsで確認すると、top,leftともにエラーのアイコンがついていて、Consoleに表示されるエラーメッセージ

The key "intial-scale" is not recognized and ignored.

が表示されます。
適用しているスタイル同士が競合して、position要素を無効化しているのでしょうか?
詳しい方のご指摘をお待ちしています。
宜しくお願いいたします!

該当のソースコード

すみません、ここの書き方がわかりません、上記の内容でいかがでしょうか?

試したこと

わからないなりに、CSSの記述の順番を変えてみたりしましたが効果はありませんでした。
top,leftに指定している数値がおかしいのかと思って変えてみましたがそうではありませんでした。
top: 0; left: 0;に指定した時だけはテキストが画面の比較的左寄りに表示され、それ以外の数値(マイナス値を含む)の場合はそれよりも右寄りに表示され、数値に依る変化はありません。

補足情報(FW/ツールのバージョンなど)

macOS Sierraでbracketsを使っています。

bracketsのバージョン リリース 1.11 ビルド 1.11.0-17524 ビルドのタイムスタンプ : Wed Sep 20 2017 03:34:28 GMT-0700

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

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

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

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

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

kei344

2018/06/05 23:57

書かれている状況が再現するコード(HTML/CSS)を提示されたほうが回答を得やすいと思います。
m.ts10806

2018/06/06 00:10

タイトルには要件を書いて下さい。 https://teratail.com/help/question-tips#questionTips3-1 タイトルから質問内容が想像できないもの、タイトルと質問内容が食い違っているものはスムーズな回答を得られなくなります。 【CSS初心者】 は要件でしょうか?
yoshinavi

2018/06/06 22:06

誤解の無いようにコードを分割し、丁寧な説明ではありますが、逆にコードを検証しづらくしております。他の方も書かれていますが、HTMLとCSSそれぞれのコードを「該当のソースコード」として提示された方が検証しやすいので、より良い回答を得れると思います。
konichiwa

2018/06/09 15:34

kei344様、mts10806様、yoshinavi様、ご指摘ありがとうございます。勝手がわからず、わかりづらい質問になってしまい情けない限りです。ご指摘の内容を踏まえて精進いたします!ありがとうございました!
guest

回答1

0

ベストアンサー

コードを見た感じ、おそらく2点問題がありそうです。

  1. 背景画像のタグのdisplay要素がインラインになっている可能性
  2. top,leftの指定に単位(px)がついてない

1.背景画像としているタグはdivでしょうか。
であれば問題ないです。
今後は、htmlも全部掲載するといいかと思います。

2.

→テキストを子要素にして
{ position: absolute;
top: 20;
left: 30; }
を適用して位置を指定。

これは

css

1top: 20px; 2left: 30px;

のように単位が必要です。

投稿2018/06/05 16:15

teruri

総合スコア220

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

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

konichiwa

2018/06/09 15:31

teruri様 とても迅速なご回答をいただきありがとうございます! すぐにお礼ができず申し訳ありません。 ご指摘いただいた通り、単位のpxが抜け落ちていたことが原因だったようで、一歩抜け出すことができました! ありがとうございます。 konichiwa
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問