添付の画像の様にしたいです。
一番左には「SoldOut」って文字が一番上に配置されてます。
(この状態でhoverも<a>のリンクも効かせたい)
以下は、ソースです。これを添付の画像の様にしたいです。
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<meta http-equiv='Content-Style-Type' content='text/css'>
<style>
img{
border: 0px;
vertical-align: middle;
}
.box li{
float: left;
list-style:none;
}
.box .out{
border-right: 10px solid #fff;
border-top: 10px solid #fff;
}
.box a {
text-align: center;
display: block;
text-decoration: none;
font-weight: bold;
color: #69380f;
background-color: #f2f2f2;
width: 100px;
height: 120px;
}
.box a:hover{
background-color: #ccc;
}
</style>
</head>
<body>
<ul class='box'>
<li><div class='out'><a href='javascript:void(0);'>hoge<br><img src='shop.cgi?img=1'><br>300円</a></div></li>
<li><div class='out'><a href='javascript:void(0);'>hoge<br><img src='shop.cgi?img=1'><br>300円</a></div></li>
<li><div class='out'><a href='javascript:void(0);'>hoge<br><img src='shop.cgi?img=1'><br>300円</a></div></li>
</ul>
<br>
</body>
</html>
以上、ご指導の程、宜しくお願いいたします。
No.4ベストアンサー
- 回答日時:
A要素中に「Sold Out」を入れておけば、たとえそれが最前面に表示されていても、clickや hoverに影響を与えません。
また Sold Outを SPAN要素として記述し、position:absoluteを適用すると、既存のテキストや画像に乗る形で表示されます。
位置付けは CSSをご覧ください。
(HTML)Sold Outを SPAN要素で追加
<li><div class='out'><a href='…'>hoge<br><img src='…'><br>… <span>Sold Out</span></a></div></li>
(CSS)
.box a {
…
position: relative; /* 追加(position:absolute用)*/
}
/* 以下追加 */
.box a span {
position: absolute;/* 位置付けと最前面表示 */
left: 0;
top: 50%;/* 垂直位置調整 */
margin-top: -0.5em;/* 行の高さの半分上へ */
width: 100%;/* 水平位置調整 */
text-align: center;/* 水平位置調整 */
color: #f00;
}
※ SPAN要素が複数行になる場合は、margin-topの変更が必要です。
※ フォントにより垂直位置に若干の異動が生じる場合があります。
No.3
- 回答日時:
とりあえず、持ち合わせのものを少し変更
[ポイント]
1) 文字は<a></a>内に書けばリンクされる。
2) 内容の追加は:before,:after擬似要素とcontent:プロパティを使う。
位置を合わせるには親をrelative;にしてから・・absolute;で
3) 本来は、この様なマークアップでないほうが良い。面倒くさくても
<ul>
<li><a href="">商品名</a>
<ol>
<li><a href="">画像</a></li>
<li><a href="">説明</a></li>
</ol>
</li>
</ul>
とすべきでしょう。また、
<ul>
<li><a href="">商品名</a>
<ol>
<li>画像</li>
<li>説明</li>
</ol>
</li>
</ul>
でも、まったく同じできます。(発想の転換が必要)
★Another HTML-lint gateway ( http://openlab.ring.gr.jp/k16/htmllint/htmllint. … )
★W3C CSS 検証サービス ( http://jigsaw.w3.org/css-validator/#validate_by_ … )
※オプションでCSS3を選択
でチェック済み
【class名は、内容を示すほうが後々絶対に楽です。--class名やidは「文書構造を示すもの( http://www.asahi-net.or.jp/~sd5a-ucd/rec-html401 … )」】
売れたものだけ<li class="soldOut">と書き換える。
★タブは_に置換してあるので戻す。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
_<meta http-equiv="content-type" content="text/html; charset=Shift_JIS">
_<title>サンプル</title>
_<meta name="author" content="ORUKA1951">
_<meta http-equiv="Content-Style-Type" content="text/css">
_<link rev="made" href="mailto:oruka1951@hoge.com" title="send a mail" >
_<link rel="START" href="../index.html">
_<style type="text/css">
<!--
body{background-color:gray;}
/* 商品一覧 */
div.merchandise{width:90%;margin:0 auto;background-color:white;}
div.merchandise a,div.merchandise a img{text-decoration:none;border:none;outline:none;}
div.merchandise ul,
div.merchandise li,
div.merchandise ul li span{
display:block;list-style:none;margin:0;padding:0;
text-align:center;
}
div.merchandise ul li{
/* float:left;*/ /* IE7以前を無視してよいならこちら */
display:inline-block;/* IE8以降でよければこちら */
width:200px;height:300px;
margin:5px;
text-align:center;
position:relative;
border:solid 1px red;
}
div.merchandise ul li a{
display:block;
width:100%;height:100%;
background-color:silver;
}
div.merchandise ul li a:hover{background-color:#ccc;}
div.merchandise ul li span.image{position:relative;width:150px;height:200px;margin:0 auto;}
div.merchandise ul li span.image img{display:block;width:150px;height:200px;}
div.merchandise ul li.soldOut span.image:after{
font-size:2em;
content:"Sold Out";
font-weight:bold;
color:red;
position:relative;
left:-10px;top:-50px;
text-shadow:5px 5px 5px black;
}
div.merchandise ul li.soldOut img{
_opacity:0.5;
}
div.merchandise hr{clear:left;visibility:hidden;margin:0;}
-->
_</style>
</head>
<body>
_<div class="header">
__<h1>サンプル</h1>
_</div>
_<div class="section merchandise">
__<ul>
___<li><a href="#1">商品名1
____<span class="image"><img src="./images/thumbnail/1.jpg" width="300" height="400" alt="黒Lサイズ"></span>
____<span class="price">300円</span>
___</a></li><!--
___--><li><a href="#2" class="soldOut">商品名2
____<span class="image"><img src="./images/thumbnail/2.jpg" width="300" height="400" alt="黒Mサイズ"></span>
____<span class="price">300円</span>
___</a></li><!--
___--><li class="soldOut"><a href="#3">商品名3
____<span class="image"><img src="./images/thumbnail/3.jpg" width="300" height="400" alt="黒Sサイズ"></span>
____<span class="price">300円</span>
___</a></li><!--
___--><li><a href="#4">商品名1
____<span class="image"><img src="./images/thumbnail/4.jpg" width="300" height="400" alt="白Lサイズ"></span>
____<span class="price">300円</span>
___</a></li><!--
___--><li><a href="#5">商品名2
____<span class="image"><img src="./images/thumbnail/5.jpg" width="300" height="400" alt="白Mサイズ"></span>
____<span class="price">300円</span>
___</a></li><!--
___--><li><a href="#6">商品名3
____<span class="image"><img src="./images/thumbnail/6.jpg" width="300" height="400" alt="白Sサイズ"></span>
____<span class="price">300円</span>
___</a></li>
__</ul>
__<hr>
_</div>
</body>
</html>
No.2
- 回答日時:
もうひとつ、
画像の表示サイズは?
a要素にサイズが指定してあるけど、なぜ?
リスト項目ひとつのひとつのサイズはどの程度を想定しているのですか?
(w)100,(H)120じゃえらく小さいけど・・
この回答への補足
heightに深い意味はありません。が、widthは私なりの意味があります。
マウスが<a>の上では指先マークで、となりとの境目では矢印カーソルにしたいと思ってます。
なので、<a>を.box .outでくるんで、「border-right: 10px solid #fff;」としてます。
>(w)100,(H)120じゃえらく小さいけど・・
大きさに深い意味はありません。
a要素の隣に10pxのボーダがあればそれでよいです。
疑問にお答えできてますでしょうか?
なにか不可思議なことがありましたら、質問ください。
No.1
- 回答日時:
Sold Outの文字は、すべてではないのですか?
Sold Outの文字はHTMLのソースに書くのですか?それとも、HTMLでsoldOutであることは、class名だけで示すのですか?
この回答への補足
ORUKA1951さん、ご回答ありがとうございます。
>Sold Outの文字は、すべてではないのですか?
「すべて」と言う意味は、3つすべてといういみでしょうか?
で、あれば、左の一つだけ、そうしたいです。
>Sold Outの文字はHTMLのソースに書くのですか?
ソースをいじってもらって結構です。
それとも、HTMLでsoldOutであることは、class名だけで示すのですか?
ソースもclassも変えてもらって結構です。
ただ、リンクの機能、hoverはそのまま残したいです。
よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS CSS のみのタブ切り替えについて 1 2023/01/11 16:47
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- HTML・CSS cssの display: flex;で横並びにならずに困ってます 1 2022/12/04 13:18
- HTML・CSS HTML & CSS 縦ボックス内の文字の左右センタリング 3 2023/03/25 04:23
- HTML・CSS テキストを画面の真ん中に配置したいです。 2 2022/11/25 16:11
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- PHP style.cssのjQuery条件付きcssが機能しない 4 2022/07/17 18:27
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
リストマーカーをボックス内に...
-
なぜ?マウスオーバーで1pt位置...
-
<ul>~</ul>が二つ続くと間に改...
-
ページを開いているときのリン...
-
リストの数字のフォントサイズ...
-
リストのナンバータグがFirefox...
-
header と nav の隙間を埋めたい。
-
<ul><li></li></ul>にするメリ...
-
list-style-type部分だけ大きく...
-
更新履歴の作り方
-
アコーディオンメニューがかく...
-
秀丸の正規表現(HTMLの修正)に...
-
CSSでメニューボタンを横一列に...
-
<table>の高さ固定。情報増加時...
-
番号付きリスト(<Ol><Li>・・...
-
HTML5のfooterに見出しを付けて...
-
画像添付のようにチェックボッ...
-
初心者です。エラー表示をなく...
-
円形の配置にするコーディング...
-
IE6でナビ下に隙間ができてしま...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
リストマーカーをボックス内に...
-
番号付きリスト(<Ol><Li>・・...
-
liタグの中に<p>タグやら<dl>を...
-
<table>の高さ固定。情報増加時...
-
レスポンシブWebデザインでリン...
-
<ul><li></li></ul>にするメリ...
-
リストの数字のフォントサイズ...
-
HTMLで組織図を作成する方法
-
ulタグやliタグの中でbrタグ...
-
divタグ内のコンテンツが重なっ...
-
画像にリンクを張ると画像がず...
-
複数行にまたがる括弧を表示し...
-
html <ul></ul>の並びで一行空...
-
ページを開いているときのリン...
-
HTML5のfooterに見出しを付けて...
-
html/cssの、navを2段にする...
-
<ul>~</ul>が二つ続くと間に改...
-
htmlの<ol>タグで、数字などを...
-
リンク文字同士の間隔を開ける...
-
CSSでつくったメニューのアニメ...
おすすめ情報