🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Flex

FlexはFlash PlayerやAdobe Airで動作するRIA(リッチインターネットアプリケーション)を開発する為のフレームワークです

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

レスポンシブWebデザイン

レスポンシブWebデザイン(RWD)は、スクリーンのサイズ、プラットフォーム、オリエンテーションに基づいて様々なデバイスで最適のサイトを生成するのウェブデザインとその開発のアプローチ方法を呼びます。

HTML

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

CSS

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

Q&A

解決済

2回答

735閲覧

<input type="text">要素を、上下で中央添えしたい

takato.work

総合スコア11

Flex

FlexはFlash PlayerやAdobe Airで動作するRIA(リッチインターネットアプリケーション)を開発する為のフレームワークです

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

レスポンシブWebデザイン

レスポンシブWebデザイン(RWD)は、スクリーンのサイズ、プラットフォーム、オリエンテーションに基づいて様々なデバイスで最適のサイトを生成するのウェブデザインとその開発のアプローチ方法を呼びます。

HTML

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

CSS

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

0グッド

0クリップ

投稿2019/09/12 15:42

<input type="text">要素を、上下で中央添えしたい

htmlとcssで、airbnbのサイト(https://www.airbnb.jp/gift)の模写をしているのですが、<input type="text">で作った検索フォーム(に見立てたもの)をflexで横に並べたところ、marginなどが、効かなくなり、line-heightやvertical-alineも効かず、上下での中央添えができなくなってしまいました。
現在の状況は、上下の中央より少し下に検索フォームがあるという状況です。ちなみに、検索フォームの左側に、logoが入ってますが、そのlogoには、marginが効いています。
positionを使えば位置を合わせることは、できるのですが、そうするとレスポンシブ化する際可変的でなくなってしまうので、違うやり方で、やりたいです。

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

エラーメッセージはありません

該当のソースコード

html

1  <header> 2 <div class="header-left"> 3 <i class="fab fa-airbnb fa-fw colorchoise"></i> 4 <input type="text" size="44" name="探す" class="fas heightchoise" placeholder=" &#xf002; 探す"> 5 </div> 6  </header>

css

1header{ 2 height:80px; 3 width:100%; 4 background-color: #fff; 5 display: flex; 6 justify-content: space-between; 7} 8 9.header-left{ 10 height:80px; 11 position: absolute; 12} 13 14 15 16.colorchoise{ 17 color: #ff595e; 18 margin-left: 26px; 19 margin-top: 22px; 20 margin-right: 17px; 21 font-size: 35px; 22 23} 24 25 26.heightchoise{ 27 padding: 15px 0 ; 28 font-size: 17px; 29 border-radius: 5px; 30 border-style: none; 31 border: 1px solid #ebebeb; 32 box-shadow: 0px 3px 10px -5px rgba(0,0,0,0.5); 33 position: absolute; 34 top: 25px; 35 left: 40px; 36} 37 38 39.heightchoise:hover{ 40 box-shadow: 0px 3px 10px -3px rgba(0,0,0,0.5); 41

試したこと

line-height vertical-aline position-abusolute margin-top margin-bottom

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

html5  css3  bootstrap4  MacbookPro最新バージョン google Chrome テキストエディタはSublime Textを使用

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

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

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

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

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

guest

回答2

0

テキストボックスの配置場所をposition: absoluteで絶対位置として指定しているのでこれを直さない限りは上下中央になることはないかと思います。

ただ1つ気になるのは、position: absoluteを指定する場合は、この要素を基準として絶対位置を決めるためにposition: relativeを宣言するのですが、記載いただいたコードには見当たらないのでどの要素を基準として位置を決めているのかが分からないです。
まずは基準となる要素をどこにするか決めてから位置を調整する様にした方が良いかと思います。

css

1.heightchoise { 2 padding: 15px 0; 3 font-size: 17px; 4 border-radius: 5px; 5 border-style: none; 6 border: 1px solid #ebebeb; 7 box-shadow: 0px 3px 10px -5px rgba(0,0,0,0.5); 8 9 /* 以下3行で位置を決めている。 */ 10 position: absolute; 11 top: 25px; 12 left: 40px; 13} 14

投稿2019/09/13 02:02

vnsa7221

総合スコア348

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

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

0

ベストアンサー

html

1  <header> 2 <div class="header-left"> 3 <div> 4 <i class="fab fa-airbnb fa-fw colorchoise"></i> 5 <input type="text" size="44" name="探す" class="fas heightchoise" placeholder=" &#xf002; 探す"> 6 </div> 7 </div> 8  </header>

css

1header{ 2 height:80px; 3 width:100%; 4 background-color: #000; 5} 6.header-left{ 7 height:80px; 8 display: flex; 9 align-items: center; 10} 11.colorchoise{ 12} 13.heightchoise{ 14 padding: 15px 0 ; 15 font-size: 17px; 16 border-radius: 5px; 17 border-style: none; 18 border: 1px solid #ebebeb; 19 box-shadow: 0px 3px 10px -5px rgba(0,0,0,0.5); 20} 21.heightchoise:hover{ 22 box-shadow: 0px 3px 10px -3px rgba(0,0,0,0.5); 23}

投稿2019/09/13 01:56

zushi0905

総合スコア683

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

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

takato.work

2019/09/13 11:11

回答ありがとうございます。とても参考になりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問