0

以下に示すように、ユーザーが自分のマシンに画像を保存する場合に、元の画像と同じ幅と高さの正方形のイメージを css で作成する方法を示します。

ここに画像の説明を入力

4

3 に答える 3

2

この効果を実現するには、イメージ コンテナーの境界半径を設定し、非表示のオーバーフロー値を適用します。例はここにあります - http://jsfiddle.net/8jbD5/1

あなたのhtmlは次のようになります:

<div id="imgCont">
    <img src="theimage.jpg" />
</div>

そしてCSS:

#imgCont{border:8px solid #f00;border-radius:50%;overflow:hidden;width:200px;height:200px}
#imgCont img{width:100%;height:100%;}

これが役立つことを願っています...

于 2013-04-24T08:26:47.643 に答える
1

次の例を参照してください: http://dabblet.com/gist/5450624 (Firefox 20/Chrome でテスト済み)。
400x400 jpg 画像を使用し、その上/左オフセットを調整しました。

関連CSS

div {
  position: relative;
  width: 0;
  height: 0;
  border: 180px silver solid;
  -webkit-border-radius: 180px;
  -moz-border-radius: 180px;
  border-radius: 180px;
}

figure {
    position: absolute;
    top: -120px;
    left: -180px;
    width: 200px;
    height: 200px;
    border: 10px red solid;
    overflow: hidden;
    -webkit-border-radius: 120px;
    -moz-border-radius: 120px;
    border-radius: 120px;
}

img {
   position: absolute;
   z-index: 1;
   left: -100px;
   top: -100px;
}

マークアップ

<div>
  <figure>
    <img src="...">
  </figure>
</div>

サンプル出力

出力

于 2013-04-24T08:37:06.410 に答える
0

いくつかの選択肢があります。

まず、元の画像として背景画像を持つ要素 (div など) を持つことができます。次に、その div の内側に、元の画像が下から見えるように、内側の円の内側に部分的な透明度を持つ画像がありました。

次に、上記と同様に行うことができますが、透明な画像を使用する代わりに、CSS と HTML を組み合わせて円を作成できます。ここにいくつかの素晴らしいデモがあります。

第三に、そしておそらく最もハックな方法は、すべてを1つの画像に入れ(質問のように)、.htaccess直接アクセスで別のファイルを提供するために使用することです。ただし、信頼できる結果が得られない場合があります。ここに説明する素敵なSOの答えがあります。

于 2013-04-24T08:28:28.393 に答える