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

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

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

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

CSS

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

Q&A

解決済

CSSでの罫線について。

green_frog
green_frog

総合スコア2

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

CSS

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

2回答

0グッド

0クリップ

249閲覧

投稿2022/11/28 06:01

実現したいこと

HTMLもしくはCSSで配置した画像の左右どちらかから横棒線を実装したいです。
CSSのみで実現可能でしょうか。
かなり多くのサイトを調べましたが、実装もしくは解説をしているサイトが見当たらず、質問させていただきます。

イメージは下図。
イメージ説明

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

chrome、ノートPCまたはデスクトップを想定しています。

以下のような質問にはグッドを送りましょう

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

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

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

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

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

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

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

適切な質問に修正を依頼しましょう。

2022/11/28 06:34

こちらの質問が他のユーザーから「やってほしいことだけを記載した丸投げの質問」という指摘を受けました。

maisumakun

2022/11/28 06:16

どうしても「罫線」でなければならないのでしょうか? (適当なボックスをものすごく細長く作る、ような手法は考えられます)
green_frog

2022/11/28 06:24

コメントありがとうございます。 borderプロパティが思い浮かんだ為、罫線と表現しました。 他の方法があるならば、罫線でなくても問題はございません。

回答2

2

疑似要素(before/after)を利用する方法もご紹介させてください。
※ サンプルの画像は、違いがわかりやすいように半透明にしています。

親要素のbeforeで横幅いっぱい線を敷いて、上に画像を重ねる方法

イメージ説明

html

1<div class="sample-1"> 2 <img src="https://placehold.jp/3d4070/ffffff/150x150.png" alt="150x150"> 3</div>

css

1.sample-1 { 2 position: relative; 3} 4 5.sample-1::before { 6 content: ""; 7 display: block; 8 width: 100%; 9 height: 1px; 10 position: absolute; 11 top: 50%; 12 left: 0; 13 z-index: -1; 14 transform: translateY(-50%); 15 background-color: #ccc; 16}

親要素のafterを線にして、flexで横に並べる方法

イメージ説明

html

1<div class="sample-2"> 2 <img src="https://placehold.jp/3d4070/ffffff/150x150.png" alt="150x150"> 3</div>

css

1.sample-2 { 2 display: flex; 3 align-items: center; 4} 5 6.sample-2::after { 7 content: ""; 8 display: block; 9 width: 100%; 10 height: 1px; 11 background-color: #ccc; 12}

投稿2022/11/28 09:34

編集2022/11/28 09:37
Cocode

総合スコア2245

spoofy_dragon👍を押しています
green_frog😍を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

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

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

このような回答には修正を依頼しましょう。

2

ベストアンサー

線をひくならhrでもおいたらどうでしょう?

css

1<style> 2.img{ 3display:flex; 4align-items: center; 5} 6.img img{ 7border:2px solid blue; 8} 9.img hr{ 10border:2px solid blue; 11width:100px; 12height:0px; 13margin-left:-2px; 14} 15 16</style> 17<div class="img"> 18<img src="#" alt="test" width="100" height="200"> 19<hr> 20</div>

投稿2022/11/28 07:02

yambejp

総合スコア109126

spoofy_dragon😄を押しています
green_frogを押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

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

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

このような回答には修正を依頼しましょう。

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

ただいまの回答率
86.02%

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

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

質問する

関連した質問

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

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

CSS

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