![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
現在、二枚の画像を徐々に変化させたいと思い
~HTML~
<TABLE>
<TBODY>
<tr>
<td><a href="http://www.abcd5.com/news" class="news_botan"></a></td>
</tr>
<tr>
<td><a href="http://www.efgh5.com/news" class="news_botan"></a></td>
</tr>
</TBODY>
</TABLE>
~CSS~
.news_botan{
width:110px;
height:10px;
display:block;
background:url(IMGTXT/news0.gif) no-repeat;
transition: background-image 4.0s ease 5s;
-webkit-transition: background-image 3.0s ease 3s;
-moz-transition: background-image 3.0s ease 3s;
-ms-transition: background-image 3.0s ease 3s;
-o-transition: background-image 3.0s ease 3s;
}
.news_botan:hover{
background:url(IMGTXT/news3.gif);
}
としましたが変化しませんでした。
どうすれば徐々にnews0.gifからnews3.gifに変化する事が出来るのでしょか?
No.3ベストアンサー
- 回答日時:
No.2です。
えらく冗長だと思ったら重複してますね。
<style type="text/css">
<!--
html,body{margin:0;padding:0;background-color:gray;}
h1,h2,h3,h4,h5,h6{margin:0;line-height:1.6em;}
p{text-indent:1em;}
div.header,div.section,div.footer{width:90%;min-width:630px;max-width:900px;margin:0 auto;padding:5px;background-color:white;}
div.header{position:relative;}
div.header div.nav{width:100px;position:absolute;top:100%;left:0;}
body>div.section h2,
body>div.section>p,body>div.section>div.section{
margin-left:100px;
width:auto;min-width:0;
}
div.header div.nav ol,div.header div.nav ol li{margin:0;padding:0;list-style:none;}
div.header div.nav ol li{width:100px;height:40px;position:relative;overflow:hidden;}
div.header div.nav ol li a{display:block;width:100%;height:100%;text-indent:-100px;}
div.header div.nav ol li a:after{display:block;position:absolute;left:100px;top:0;opacity:1;}
div.header div.nav ol li a:hover:after{opacity:0;}
/* 時間的変化 */
div.header div.nav ol li a:hover:after{
-moz-transition-property: opacity;
-webkit-transition-property: opacity;
-o-transition-property: opacity;
-ms-transition-property: opacity;
-moz-transition-duration:1s;
-webkit-transition-duration:1s;
-o-transition-duration:1s;
-ms-transition-duration:1s;
-moz-transition-timing-function:ease-in-out;
-webkit-transition-timing-function:ease-in-out;
-o-transition-timing-function:ease-in-out;
-ms-transition-timing-function:ease-in-out;
}
/* ここまで */
div.header div.nav ol li a[href="/"]{background-image:url(./images/navi/home2.gif);}
div.header div.nav ol li a[href="/"]:after{content:url(./images/navi/home.gif);}
div.header div.nav ol li a[href="/books"]{background-image:url(./images/navi/books2.gif);}
div.header div.nav ol li a[href="/books"]:after{content:url(./images/navi/books.gif);}
div.header div.nav ol li a[href="/profile"]{background-image:url(./images/navi/profile2.gif);}
div.header div.nav ol li a[href="/profile"]:after{content:url(./images/navi/profile.gif);}
-->
</style>
まあ、デザインのためにHTMLは書かないようにしましょう。その意味でTABLEは禁止!!
先でナビゲーションを横に並べようとしたり、増えたりするたびにHTMLやスタイルシートを書き直すなんて羽目になります。
ナビゲーションリストを様々にデザインしてみよう。( http://www.ichiya.com/WebService/Howto/sample/HT … )
で、ブラウザの表示メニュー→スタイル(シート)と進んで、スタイルを色々と変えたり印刷プレビュー見たりしてみましょう。HTMLにはデザイン的要素は全くないので、どのようにもデザインできますね。
それをしないことには、始まりません。
ORUKA1951さま
色々とご教授ありがとうございました。
これからはtableは使わず始め良く考えて構築したいと思います。
今回は色々と勉強させて頂き
ありがとうございました
No.2
- 回答日時:
ごく簡単なサンプル挙げておきます。
★Another HTML Lint - Gateway( http://www.htmllint.net/html-lint/htmllint.html# )
で検証済みのHTML4.01strict + CSS3です。
★タブは_に置換してあるので戻す。
★HTML5にする場合は、<!doctype html>にして、<div class="header"></div>→<header></header>、<div class="nav"></div>→<nav></nav>のように変更して、CSSも書き換える。
★画像は添付のような物
<!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">
<!--
html,body{margin:0;padding:0;background-color:gray;}
h1,h2,h3,h4,h5,h6{margin:0;line-height:1.6em;}
p{text-indent:1em;}
div.header,div.section,div.footer{width:90%;min-width:630px;max-width:900px;margin:0 auto;padding:5px;background-color:white;}
div.header{position:relative;}
div.header div.nav{width:100px;position:absolute;top:100%;left:0;}
body>div.section h2,
body>div.section>p,body>div.section>div.section{
margin-left:100px;
width:auto;min-width:0;
}
div.header div.nav ol,div.header div.nav ol li{margin:0;padding:0;list-style:none;}
div.header div.nav ol li{width:100px;height:40px;position:relative;overflow:hidden;}
div.header div.nav ol li a{display:block;width:100%;height:100%;text-indent:-100px;}
div.header div.nav ol li a:after{display:block;position:absolute;left:100px;top:0;opacity:1;}
div.header div.nav ol li a:hover:after{opacity:0;}
div.header div.nav ol li a:hover:after{
-moz-transition-property: opacity;
-webkit-transition-property: opacity;
-o-transition-property: opacity;
-ms-transition-property: opacity;
-moz-transition-duration:1s;
-webkit-transition-duration:1s;
-o-transition-duration:1s;
-ms-transition-duration:1s;
-moz-transition-timing-function:ease-in-out;
-webkit-transition-timing-function:ease-in-out;
-o-transition-timing-function:ease-in-out;
-ms-transition-timing-function:ease-in-out;
}
div.header div.nav ol li a[href="/"]{background-image:url(./images/navi/home2.gif);}
div.header div.nav ol li a[href="/"]:after{content:url(./images/navi/home.gif);}
div.header div.nav ol li a[href="/books"]{background-image:url(./images/navi/books2.gif);}
div.header div.nav ol li a[href="/books"]:after{content:url(./images/navi/books.gif);}
div.header div.nav ol li a[href="/profile"]{background-image:url(./images/navi/profile2.gif);}
div.header div.nav ol li a[href="/profile"]:after{content:url(./images/navi/profile.gif);}
div.header div.nav ol li a:after{
-moz-transition-property: opacity;
-webkit-transition-property: background-image;
-o-transition-property: background-image;
-ms-transition-property: background-image;
-moz-transition-duration:1s;
-webkit-transition-duration:1s;
-o-transition-duration:1s;
-ms-transition-duration:1s;
-moz-transition-timing-function:ease-in-out;
-webkit-transition-timing-function:ease-in-out;
-o-transition-timing-function:ease-in-out;
-ms-transition-timing-function:ease-in-out;
}
-->
_</style>
</head>
<body>
_<div class="header">
__<h1>タイトル</h1>
__<p>このページでは・・・・</p>
__<div class="nav">
___<ol>
____<li><a href="/">Top</a></li>
____<li><a href="/books">書籍</a></li>
____<li><a href="/profile">プロフィール</a></li>
___</ol>
__</div>
_</div>
_<div class="section">
__<h2>見出し</h2>
__<p>本文はsection</p>
__<div class="section" id="section1">
___<h3>項見出し</h3>
___<p>本文項記事</p>
___<p>sectionの階層でレベルが判断される</p>
__</div>
_</div>
_<div class="footer">
__<h2>文書情報</h2>
__<dl class="documentHistry">
___<dt id="FIRST-PUBLISHED">First Published</dt>
___<dd>2013-03-03</dd>
__</dl>
_</div>
</body>
</html>
![「background-imageを徐々変」の回答画像2](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/f/650963_5497e27b3fe60/M.jpg)
No.1
- 回答日時:
background-imageプロパティはtransitionでは変化させることが出来ません。
理由は、数値でない--時間的変化可能なプロパティではないからです。!!言われてみれば当たり前の事ですが・・
If one of the identifiers listed is not a recognized property name or is not an animatable property( http://www.w3.org/TR/css3-transitions/#transitio … )
opacityプロパティを使います。
なお、プレゼンテーションにtableを使うべきではありません。
・単に文書内容を整形する目的だけで表を用いるべきでない。( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )
・ページレイアウトの目的で表を用いる。( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )
1999年のHTML4.01の勧告以来強く言われ続けた事です。
DIV要素に「id属性及び class属性と併用することで、文書に構造を付加( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )」することで対応します。HTML5だと「文書をよりよく構造化するために、( http://standards.mitsue.co.jp/resources/w3c/TR/h … )」nav要素が追加されました。
すなわち、HTML4.01(XHTML1.0,XHTML1.1)でしたら
<div class="header">
<div class="nav">
<ol>
<li><a href="/">トップ</a></li>
・・・
HTMLでしたら
<header>
<nav>
<ol>
<li><a href="/">トップ</a></li>
・・・
とすべきです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS テーブルタグのセルの幅の一部だけを指定 1 2023/03/12 12:02
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- HTML・CSS img と p を縦中央に配置したいのですがうまくいきません。 2 2023/01/12 14:38
- HTML・CSS スクロールすると追従する画像のコードを書いているのですが、追従する画像の大きさの調節が上手くいきませ 2 2022/04/18 12:52
- HTML・CSS cssが効かなくて困ってます 1 2023/01/01 23:57
- HTML・CSS html/cssで要素が出てこなくて困ってます 1 2022/12/31 16:59
- HTML・CSS PCサイズで赤い画像2つと、青い画像2つがそれぞれ横に2つずつ並んでいるのですが、これをスマホサイズ 5 2022/04/11 12:01
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
htmlのolやulなどlistにtitleや...
-
複数のボタンを等間隔に、かつ...
-
<div id="container">の使いか...
-
HTML属性での「""」 「''」違い
-
html の divとtable の役割
-
div要素が重なってします
-
ブログのサイドバーが下にくる
-
1時間30分を簡単に表したいで...
-
inline-blockをネストすると表...
-
divの中に外部のHTMLを埋め込む
-
横並びdivで一部の初期高さがず...
-
3カラムレイアウトで「常に残り...
-
background-imageを徐々変化さ...
-
一括で全体を右にずらす
-
SEOの観点から特殊記号はどのよ...
-
<PRE></PRE>内の<h1></h1>をそ...
-
h1のテキストサイズよりh2の方...
-
スライド部分のリンクが貼れな...
-
セクションをdivで囲むと見出し...
-
ヘッダーとフッターだけ背景を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
HTML属性での「""」 「''」違い
-
htmlのolやulなどlistにtitleや...
-
div要素が重なってします
-
複数のボタンを等間隔に、かつ...
-
html の divとtable の役割
-
<div id="container">の使いか...
-
min-heightとheightの違いについて
-
ヘッダーとフッターだけ背景を...
-
1時間30分を簡単に表したいで...
-
要素間、要素内に隙間が空く
-
画面を縮小するとカラムが落ち...
-
h1のテキストサイズよりh2の方...
-
divの中に外部のHTMLを埋め込む
-
スペースを使わず文字位置を揃...
-
<!-- #BeginLibraryItemとは
-
hタグの右横に画像を表示
-
グリッドレイアウトで"auto-fit...
-
セクションをdivで囲むと見出し...
-
開閉式の隠し要素が一瞬表示さ...
-
html5でheaderの中にnav
おすすめ情報