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

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

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

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

CSS

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

Q&A

解決済

2回答

721閲覧

CSSでテキスト、画像、フォームの配置がうまくできません。

blueletter5

総合スコア24

HTML

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

CSS

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

0グッド

0クリップ

投稿2019/02/17 10:14

編集2019/02/27 14:38

初心者です。ウェブサイト作成の学習をしています。

イメージ説明
おおよそ添付画像のようなログイン画面を作成したいと思っています。

①ページのタイトルを記述するだけの「トピック」部分のcssですが”ログイン”
という文字が垂直方向の中央に配置されません。
display: inline; にするとテキスト部分のみに背景色が適用されます。
display: inline-block; にしてもテキストの垂直方向に動いてくれません。
念のためblockをいれてみたのですが変わりません。
ちなみにページの幅、widthは1000pxです。
<div id="topic"> の部分に記述した文字列を垂直方向中央にするにはどのようなCSSを記述したり、
HTMLの方に何か加えるなりしたらよろしいでしょうか?

#topic { height: 30px; background-color: #819FF7; vertical-align: middle; }

②添付画像にもありますが、上から4行目のロゴ2 の横にユーザーIDとパスワードのフォームを配置し、さらにログイン画面をフォームの横に設置しようとしています。
cssで幅を設定し form や fieldset にfloat: right; をかけてみたのですがユーザーIDやパスワードのボックスがうまくロゴ2の横にならんでくれません。フッター部分の右下に配置されたりします。

おおよそurl画像のようにロゴ2の画像の横に2つのフォームを縦に並べ、その横にログインボタンを配置し、メイン画像の縦横中央にこれらを配置するにはどのようなCSSを記述すればいいでしょうか?

独学で学習していたのですが、やはり自分で作ってみようとすると中々うまくいきません。

ご面倒でしょうが何卒よろしくお願いします。m(_ _)m

【HTML】

<!--↓main contents↓--> <main> <div id="topic">ログイン</div> <p><img src="img/common/logo2.jpg" alt="ロゴ2"></p> <!--↓form↓--> <form action="#"> <fieldset> <p><input type="text" name="userid" pattern="^[0-9A-Za-z]+$" value="" placeholder="ユーザーID"></p> <p><input type="password" name="password" pattern="^[0-9A-Za- z]+$" value="" placeholder="パスワード"></p> <p><input type="submit" value="ログイン"></p> </fieldset> </form> <!--↑form↑--> </main> <!--↑main contents↑-->

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

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

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

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

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

kei344

2019/02/17 10:42

(質問文は編集できます)質問文のコードはそれぞれコードブロックで囲んでいただけませんか? ```(バッククオート3つ)で囲み、前後に改行をいれるか、コードを選択して「<code>」ボタンを押すとコードブロックになります。 また、書かれている状況が再現するコード(HTML/CSS)全体を提示されたほうが回答を得やすいと思います。
blueletter5

2021/05/21 04:57

ありがとうございます。
guest

回答2

0

ベストアンサー

CSSが部分的にしか提示されていないので、ざっくりで回答します。
area-bさんの書かれているように、flexとかgridで処理するのが良いと思います。

【CSS3 Flexbox の各プロパティの使い方をヴィジュアルで詳しく解説 | コリス】
http://coliss.com/articles/build-websites/operation/css/css3-flexbox-properties-by-scotch.html

【CSS Grid Layout を極める!(基礎編) - Qiita】
https://qiita.com/kura07/items/e633b35e33e43240d363

【よこ並びのCSS。】
http://lopan.jp/layout/

【段組みのCSS。】
https://lopan.jp/layout2/

投稿2019/02/27 19:34

kei344

総合スコア69400

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

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

0

①は#topicにline-height:30px;を追加 とかどうでしょうか。

②はtopic,imgのp,formを全部display:inline-block;にすれば横並びになると思います。(ただし大きさ的にはみ出したら折り返されます。)

あるいはflexとかgridでもできます。

投稿2019/02/17 13:01

編集2019/03/16 09:57
user14

総合スコア125

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問