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

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

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

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

Q&A

解決済

1回答

489閲覧

画像内へのinputタグの入れ方

pqtrick

総合スコア5

HTML

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

0グッド

0クリップ

投稿2020/02/17 20:01

編集2020/02/18 06:00

実現したいこと

画像をクリックすると、file選択画面になる
(画像の中にfileタイプのinputを入れ、かつ、”ファイルを選択”等を非表示にしたい)

参考画像

・目標
https://gyazo.com/4122de7305e33136d359b525d74f678d
・現在
https://gyazo.com/0fe7f06c139701c50a0611a3d156047b

hamlコード

html

1.exhibition__upload__box 2 .exhibition__upload__box__head 3 出品画像 4 %p.exhibition__upload__box__head__sub 最大4枚までアップロードできます 5 .exhibition__upload__box__images 6 .exhibition__upload__box__image 7 = image_tag "https://asset.fril.jp/assets/new_web/item_upload_dummy-0f57862f590c6e592ffa657b6b8c6fbdd3c4051a1acc60d72e5a15f4f71f7351.png", alt: "Item upload dummy" ,height: "100%", width: "100%" 8 .file-picker 9 %input{accept: "image/*", name: "image1", type: "file"} 10 .exhibition__upload__box__image 11 = image_tag "https://asset.fril.jp/assets/new_web/item_upload_dummy-0f57862f590c6e592ffa657b6b8c6fbdd3c4051a1acc60d72e5a15f4f71f7351.png", alt: "Item upload dummy" ,height: "100%", width: "100%" 12 .file-picker 13 %input{accept: "image/*", name: "image2", type: "file"} 14 .exhibition__upload__box__image 15 = image_tag "https://asset.fril.jp/assets/new_web/item_upload_dummy-0f57862f590c6e592ffa657b6b8c6fbdd3c4051a1acc60d72e5a15f4f71f7351.png", alt: "Item upload dummy" ,height: "100%", width: "100%" 16 .file-picker 17 %input{accept: "image/*", name: "image3", type: "file"} 18 .exhibition__upload__box__image 19 = image_tag "https://asset.fril.jp/assets/new_web/item_upload_dummy-0f57862f590c6e592ffa657b6b8c6fbdd3c4051a1acc60d72e5a15f4f71f7351.png", alt: "Item upload dummy" ,height: "100%", width: "100%" 20 .file-picker 21 %input{accept: "image/*", name: "image4", 22

cssコード

scss

1.exhibition__upload__box{ 2 height: 350px; 3 padding: 40px; 4 border-bottom: 2px solid rgb(245,245,245); 5 &__head{ 6 font-size: 16px; 7 font-weight: 900; 8 &__sub{ 9 font-size: 12px;; 10 } 11 } 12 &__images{ 13 height: 200px; 14 display: flex; 15 justify-content: space-between; 16 margin-top: 10px; 17 } 18 &__image{ 19 width: 24%; 20 border: 1px dotted gray; 21 background-color: rgb(245,245,245); 22 } 23}

試したこと

labelタグを用いる
imageをrelativeにし、inputをabsoluteにする
display:none;を用いる

最後に

初めての質問ですので、情報量が少なければ、ご指摘いただけると幸いです

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

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

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

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

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

m.ts10806

2020/02/17 21:53

>hamlコード とされると環境用意しないといけません。ブラウザに出力されたHTMLをご提示ください。 あと、CSS JavaScriptもご提示ください。
x_x

2020/02/18 01:57

「試したこと」が反映されたコードを書いてください。
kei344

2020/02/18 02:06

teratailでは画像もアップできますので、ご自信で所持されている画像であればそちらを使用されてはいかがでしょうか。(画像として質問文に表示されますし)
guest

回答1

0

ベストアンサー

以下のようなHTMLが出力されていれば問題ないはずですが、
試したことに書いてある内容でもダメであれば何かが邪魔をしていると思われます。

HTML

1<label for="image1"> 2 <img src="https://asset.fril.jp/assets/new_web/item_upload_dummy-0f57862f590c6e592ffa657b6b8c6fbdd3c4051a1acc60d72e5a15f4f71f7351.png"> 3</label> 4<input type="file" id="image1" style="display: none;"> 5

投稿2020/02/18 00:10

tabuu

総合スコア2449

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

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

pqtrick

2020/02/18 06:13

<label>にclassを与えてしまっていて、そもそも<input>とのidによる紐付けができていませんでした。。
pqtrick

2020/02/18 06:13

ありがとうございました
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問