ブログの画像を角丸にする方法

このQ&Aのポイント
  • ブログのテンプレートを変更して、画像の角が自動的に丸くなるようにする方法を教えてください。
  • 指定したURLの画像を自動で角丸にするサイトがありますが、それをブログのテンプレートに組み込む方法を教えてください。
  • ブログで表示する画像の角を丸くするためのテンプレートの変更方法を教えてください。
回答を見る
  • ベストアンサー

ブログに表示される画像の角を、丸くしたいです。

 ブログを書いています。ブログで画像を表示するとき、その画像の周りに、浮き上がるような装飾が自動的につくテンプレートを使用しています。そのテンプレートを下に書きます。 ------------------------------------------ /* 画像の装飾 */ .mainEntryBase img{ margin:0px 3px 0px 0px; padding: 3px; background-color: #FFFFFF; border-right-width: 1px; border-bottom-width: 2px; border-right-style: solid; border-bottom-style: solid; border-right-color: #999999; border-bottom-color: #999999; } ------------------------------------------  このテンプレートを変更して、ブログ上で表示する画像の角が自動的に丸くなるようにしたいと考えています。どのようにすればいいのか教えてください。  http://ezinfo.jp/contents/script/rcr/  このサイトでは、画像のURLを入力すると自動で角を丸くしてくれます。このような操作を、ブログのテンプレートに組み込み、表示した画像の角が自動的に丸くしたいと考えています。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • LLLuna
  • ベストアンサー率35% (13/37)
回答No.2

>画像を4つ作り、それをアップロードした画像の四隅に表示させる スタイルシートでの実現は、残念ですが無理だと思います。先ほどふと、DirectXの機能を利用するfilterプロパティ(WinIE限定)なら出来るのではと思いましたが、これを実現できるものはありませんでした。 JavaScript(DOM)を使えば出来るかもしれませんが、様々な問題が考えられることから、この方法では出来たとしても実用には耐えられないと思います。もっと画期的な方法が有れば別ですが、テンプレートとして実現することは出来ないでしょう。 どうしても自動的に行いたいならば、CGIを利用するのが一番実用的だと思います。 画像URIをパラメータとして渡すと、加工済みの画像を返してくる。そういうCGIがあれば、自動的に角を丸くすることが実現できるでしょう。 問題点は、そのCGIをおいたサーバに負荷がかかることですね。 そうでなければ、やはり予め加工した画像を使うほかないと思います。

regist2000
質問者

お礼

回答、ありがとうございます。とても詳しく教えていただけたので、参考になりました。スタイルシートで角を丸くするのは難しい、ということがよくわかりました。 あらかじめ加工した画像をアップロードして使ったほうが手軽で簡単ということですね。これからそのようにしてアップロードしていきたいと思います。 2度の丁寧な回答、本当にありがとうございました。

その他の回答 (1)

  • LLLuna
  • ベストアンサー率35% (13/37)
回答No.1

私が知る限りでは、画像の角を切り取るCSSプロパティはありません。 -moz-border-radius:《サイズ》; という、枠線の角を丸くするものならありますが(Gecko限定。CSS3に採用予定)。応用が利かないかと試してみましたが、出来ませんでした。 (そちらのサイトで)画像の角を丸く加工し、ブログに掲載する。それしか無いのでは?

regist2000
質問者

補足

回答ありがとうございます。 画像を切り取るのは、難しいことがわかりました。 切り取るのではなく、内側が透明で外側が白色の画像を 四隅に上から表示することで切り取ったようにみせることはできますか? 画像を4つ作り、それをアップロードした画像の四隅に表示させるというテンプレートは作れないでしょうか?

関連するQ&A

  • ブログのテンプレートを変更して、画面全体に表示したい。

    ブログのテンプレートを変更して、画面全体に表示されるようにしたいんですが、以下のスタイルシートにどうやって打ち込めばそのようになりますか? #header { text-align:left; width:908px; padding:20px; background-color:#448844; border-right:1px solid #444444; border-left:1px solid #444444; } ↑908pxのところとかを、変えたらできるように思うんですが、なんて打ち込めばいいか教えてください。変える時に注意すべきことも教えてください。

  • CSSで枠線の太さを変えるとき

    CSSでlistタグを使ってナビゲーションを作る練習をしています。 CSSで以下のように書いた場合、a:hover時の動作として、上の枠線のみが1pxから5pxに変わります。しかし、この方法だと、【上の枠線の下】が5pxとなり、その分、入力してある文字が下にずれます。 そこで、ずれないように、【上の枠線の上】に5px増やすにはどうすればいいでしょうか。 あるいは、そのように見せるための方法がありますか。画像は使用しないで作りたいです。 よろしくお願いします(CSSは初心者程度のレベルです)。 ================================================== ul{ list-style-type:none; } a{ text-decoration:none; } li a{ border-top-style:solid; border-right-style:solid; border-bottom-style:solid; border-left-style:solid; border-top-width:1px; border-right-width:1px; border-bottom-width:1px; border-left-width:1px; border-top-color:red; border-right-color:green; border-bottom-color:green; border-left-color:green; width:8em; } li a:hover{ border-top-style:solid; border-right-style:solid; border-bottom-style:solid; border-left-style:solid; border-top-width:5px; border-right-width:1px; border-bottom-width:1px; border-left-width:1px; border-top-color:red; border-right-color:green; border-bottom-color:green; border-left-color:green; width:8em; } ==================================================

    • ベストアンサー
    • CSS
  • 角丸にしたDiv内の画像の角がはみ出してしまう

    よろしくお願いします。 参考書片手にCSSを勉強しています。 品物の画像をスマホで見られるページを作っているのですが、 角丸にしたDiv内の画像の角がはみ出してしまい、対処法がわからず悩んでいます。 どのような方法がありますでしょうか。 初歩的な質問で恐れ入りますがご教授お願いします。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>じっけんじっけん</title> <style type="text/css"> <!-- body, p, h1, h2, h3, img, table, div, ul, li { margin: 0px; padding: 0px; font-family: Helvetica, sans-serif; } #wrap { background-color: #EEEEEE; height: auto; width: 100%; margin: 0px; padding-top: 100px; padding-right: 0px; padding-bottom: 50px; padding-left: 0px; } .title { width: 100%; margin-right: auto; margin-left: auto; } .main { background-color: #FFFFFF; width: 96%; margin-right: auto; margin-left: auto; box-shadow: 0px 10px 10px rgba(0, 0, 0, 0.2); box-shadow:0px 0px 2px #555; margin-bottom: 100px; border-radius: 20px; } p.resizeimage img { width: 100%; } .itemnum { color: #7D7D7D; font-size: 40px; padding: 30px; border-bottom-width: thin; border-bottom-color: #C0C0C0; line-height: 50px; float: left; } .price { color: #7D7D7D; font-size: 52px; padding: 30px; border-bottom-width: thin; border-bottom-style: solid; border-bottom-color: #C0C0C0; line-height: 60px; text-align: right; } .itemname { color: #7D7D7D; font-size: 40px; padding: 30px; border-bottom-width: thin; border-bottom-style: solid; border-bottom-color: #C0C0C0; line-height: 54px; font-weight: bold; } .detail { color: #7D7D7D; font-size: 40px; padding: 30px; border-bottom-width: thin; border-bottom-style: solid; border-bottom-color: #C0C0C0; line-height: 48px; } --> </style> </head> <body> <div id="wrap"> <div class="main"> <p class="resizeimage"> <img src="p/a.jpg"> </p> <p class="itemnum">32×13×22cm</p> <p class="price">¥10,000</p> <p class="itemname">アイテム</p> <p class="itemname">Aタイプ</p> </div> <div class="main"> <p class="resizeimage"> <img src="p/b.jpg"> </p> <p class="itemnum">35×14×24cm</p> <p class="price">¥10,000</p> <p class="itemname">アイテム</p> <p class="itemname">Bタイプ</p> </div> </div> </body> </html>

    • ベストアンサー
    • CSS
  • exciteブログでトップに画像を表示させたいのですが

    exciteブログを使っていますが、ブログのタイトルのところに画像を載せたいです。 DIV#TOP { BACKGROUND : #6F8294 url(http://~~~~~(ここは省略させていただきます。)) : no-repeat ; border-bottom : 5px solid #c1d6f8 WIDTH : 700PX; HEIGHT : 200PX; } とCSSで設定したのですが画像が表示されません。 間違っているところを教えていただきたいです。 どうぞよろしくお願いします。

  • liタグのナビボタンがFirefoxで二重に表示。

    liタグでナビボタンを縦に3つ積みたいのですが、IEでは正しく表示しますが、何故かFirefoxでは2段めから2つずつ表示してしまい5つのナビボタンになってしまいます。どのように記述すれば良いのでしょう? <div id="sidebar"> <ul> <li id="aaa"><a href=""><span>aaa</span></li> <li id="bbb"><a href=""><span>bbb</span></li> <li id="ccc"><a href=""><span>ccc</span></li> </ul> </div> div#sidebar { width: 245px; float:left; border-right-width: 1px; border-right-style: solid; border-right-color: #CCCCCC; } div#sidebar ul li a { display: block; } div#sidebar ul li a span { position:absolute; width: 0; height: 0; overflow:hidden; } ul li#aaa a { width: 245px; height: 60px; background-image:url(image/aa.jpg); background-position: 10px 20px; background-repeat: no-repeat; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #999999; } ul li#bbb a { width: 245px; height: 60px; background-image:url(image/bb.jpg); background-position: 10px 20px; background-repeat: no-repeat; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #999999; } ul li#ccc a { width: 245px; height: 60px; background-image:url(image/cc.jpg); background-position: 10px 20px; background-repeat: no-repeat; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #999999; }

    • ベストアンサー
    • CSS
  • 2階層目の現在ページをナビで表示させるには

    こんにちわ。 WORDPRESSでホームページを作成しております。 添付画像の様にグローバルナビで現在の位置を背景色緑で表示してるのですが、1階層目の時しか表示されません。 WORKSの2階層目である「コンサルティング」も同様にしたいのですが、2階層目も反映してくれるにはどの様なPHPを記述すればいいのでしょうか。 ---------PHP記述--------- <ul id="nav"> <li<?php if(is_home()){echo ' class="current_page_item"';} ?>> <a href="<?php bloginfo('url'); ?>" title="TOP">TOP</a></li> <?php wp_list_pages('title_li=&depth=1'); ?> </ul> --------------------------- ---------CSS(CSSは関係ないと思いますが、一応)------------------ #nav { background-color: #ffffff; margin: 0; padding: 0; list-style-type: none; height: 2em; width: 800px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #00645C; } #nav li { text-align: center; float: left; line-height: 2em; } #nav li a { display: block; width: 110px; text-decoration: none; color: #333333; border-top: 1px solid #fff } #nav li a:hover { color: #00645C; border-top-width: 1px; border-right-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-left-style: solid; border-top-color: #00645C; border-right-color: #00645C; border-left-color: #00645C; } #nav .current_page_item a { color: #FFFFFF; background-color: #00645C; border-top: 1px solid #00645C } --------------------------- また、ページ内リンクをしたいのですが、絶対パスで単純にサーバーにアップされてるURLを記述する方法しかないのでしょうか。

    • 締切済み
    • PHP
  • 横線の書き方

    CSSを使って横線を記述しようとしています。 こんな感じで書きました。 css------------------- .udl5 { margin-right: 5px; margin-left: 5px; margin-top: 3px; margin-bottom: 1px; border-left-style: none; border-left-width: 0px; border-right-style: none; border-right-width: 0px; border-top-width: 1px; border-top-style: solid; border-top-color: #666666; border-bottom-style: none; border-bottom-width: 0px; width: 600px; height: 1px; } ----------------------------------------------- html------------------------------------------- <div class="udl5"></div> ----------------------------------------------- こんな感じで記述したのですがIE7ではちゃんと 表示されるのですが、IE6だと線の下に10pxぐらいの 空欄ができてしまいます。 なぜでしょうか? もし知っている方がいれば教えていただければと思います。 よろしくお願いします。

  • ピクセル表示をパーセント表示にするには?

    ピクセル表示をパーセント表示にするには? style.cssで下のような記述をしています。 これをパーセント表示に切り替えたいのですが、 WIDTH: 640px;を WIDTH: "100%"に変更する他に、 どこを変更すればよいのでしょうか? 上の変更だけでは、パーセント表示に切り替わりません。 よろしくおねがいします。 -----ここから BODY { BACKGROUND-COLOR: #000000 } TABLE { BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 5px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; WIDTH: 640px; PADDING-TOP: 0px; BACKGROUND-COLOR: #ffffff; BORDER-RIGHT-WIDTH: 0px } DIV.veryimportant { FONT-SIZE: large; BACKGROUND: #7375ce; COLOR: #ffffff } A:hover { FONT-WEIGHT: bold; COLOR: #f00ca0 }

    • ベストアンサー
    • HTML
  • Liで背景画像が表示されない (Safari、Operaにて)

    こんにちは。 同じような質問が続いていますが、違うものでございます。 以下のようなcssを組んだのですが、なぜかSafari、Operaでは文頭の画像が表示されません。 (ちなみに画像は幅4px、高さ5px) なぜかお分かりになる方がいらしたら、教えていただければと思います。 #box { width: 160px; color: #333333; background-color:#ffffff; border-right:1px solid #333333; border-top:2px solid #CC0033; } #box ul { list-style:none; margin:0 0 2px 0; padding:0 0 0 1.2em; line-height:1.7; } #box ul li { margin:0px; padding:0 0 0 0.8em; font-size:75%; color: #CC0033; background-color: #FFFFFF; background: 0 url(../images/pt-sub.gif) no-repeat 0.5em; border-bottom:1px dotted #aaaaaa; list-style:none; }

    • ベストアンサー
    • HTML
  • 中枠の太さを1pxにしたい

    以下の HTML を書いたのですが、外枠の太さは1pxになっていますが、中枠が2pxになってしまいます。中枠も1pxで表示するにはどう修正すればいいでしょうか? ご教授よろしくお願い致します。 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <title>test</title> </head> <body> <table border="0" width="100%" cellspacing="0" cellpadding="0" id="table2"> <tr> <td><div style="border:1px solid #999999"> <div style="BORDER-TOP: 1px solid;BORDER-RIGHT: 1px solid;BORDER-BOTTOM: 1px solid;BORDER-LEFT: 1px solid;padding:3px;">Icon</div></div></td> <td><div style="border:1px solid #999999"> <div style="BORDER-TOP: 1px solid;BORDER-RIGHT: 1px solid;BORDER-BOTTOM: 1px solid;BORDER-LEFT: 1px solid;padding:3px;">Name</div></div></td> <td><div style="border:1px solid #999999"> <div style="BORDER-TOP: 1px solid;BORDER-RIGHT: 1px solid;BORDER-BOTTOM: 1px solid;BORDER-LEFT: 1px solid;padding:3px;">Effect</div></div></td> </tr> <tr> <td width="33"><div style="border:1px solid #999999"> <div style="BORDER-TOP: 1px solid;BORDER-RIGHT: 1px solid;BORDER-BOTTOM: 1px solid;BORDER-LEFT: 1px solid;padding:3px;"> <img border="0" src="test.gif" width="35" height="32"></div></div></td> <td><div style="border:1px solid #999999"> <div style="BORDER-TOP: 1px solid;BORDER-RIGHT: 1px solid;BORDER-BOTTOM: 1px solid;BORDER-LEFT: 1px solid;padding:3px; height:40"> 111111</div></div></td> <td><div style="border:1px solid #999999"> <div style="BORDER-TOP: 1px solid;BORDER-RIGHT: 1px solid;BORDER-BOTTOM: 1px solid;BORDER-LEFT: 1px solid;padding:3px; height:40"> 444444</div></div></td> </tr> <tr> <td width="33"><div style="border:1px solid #999999"> <div style="BORDER-TOP: 1px solid;BORDER-RIGHT: 1px solid;BORDER-BOTTOM: 1px solid;BORDER-LEFT: 1px solid;padding:3px;"> <img border="0" src="test.gif" width="35" height="32"></div></div></td> <td align="left"><div style="border:1px solid #999999"> <div style="BORDER-TOP: 1px solid;BORDER-RIGHT: 1px solid;BORDER-BOTTOM: 1px solid;BORDER-LEFT: 1px solid;padding:3px; height:40"> 222222</div></div></td> <td><div style="border:1px solid #999999"> <div style="BORDER-TOP: 1px solid;BORDER-RIGHT: 1px solid;BORDER-BOTTOM: 1px solid;BORDER-LEFT: 1px solid;padding:3px; height:40"> 555555</div></div></td> </tr> <tr> <td width="33"><div style="border:1px solid #999999"> <div style="BORDER-TOP: 1px solid;BORDER-RIGHT: 1px solid;BORDER-BOTTOM: 1px solid;BORDER-LEFT: 1px solid;padding:3px;"> <img border="0" src="test.gif" width="35" height="32"></div></div></td> <td align="left"><div style="border:1px solid #999999"> <div style="BORDER-TOP: 1px solid;BORDER-RIGHT: 1px solid;BORDER-BOTTOM: 1px solid;BORDER-LEFT: 1px solid;padding:3px; height:40"> 333333</div></div></td> <td><div style="border:1px solid #999999"> <div style="BORDER-TOP: 1px solid;BORDER-RIGHT: 1px solid;BORDER-BOTTOM: 1px solid;BORDER-LEFT: 1px solid;padding:3px; height:40"> 666666</div></div></td> </tr> </table> </body> </html>

    • ベストアンサー
    • HTML