4辺が違う色のボーダーにborder-radius:50%を加えると…

タイトルのままですが、4辺が違う色のボーダーにborder-radius:50%を加えてサークル状にするとどうなるか知っていますか?私は先日知ったので紹介します。

circle2.png

最初はこんな感じです。

border-radius:50%を加えてサークル状にするとこんな感じになります。border-radiusはIE8以下非対応ですので、下のは画像にしています。

circle-border-radius.png

かなり印象は変わります。当たり前といえば当たり前な気もしますが。で、transitionで回すと面白いです。

ということでサンプルを作ってみました。最近なぜかIEが起動しないのでIEの動作確認はしていません。。

せっかくなのでコードも載せておきます。

<a href="#" id="circle1">CSS<span></span></a>

ボーダーだけを回すためspan要素を入れてボーダーを指定しています。ちょっとかっこ悪い気もしますが、他に方法が思いつかなかったので。

#circle1{
  display: block;
  position: relative;
  width: 300px;
  height: 300px;
  margin: 50px auto;
  padding: 0px;
  border-radius: 50%;
  background: #fff;
  color: #3F2F69;
  font-size: 60px;
  line-height: 300px;
  text-align: center;
  text-decoration: none;
}
#circle1 span {
  position: absolute;
  top: -10px;
  left: -10px;
  border-width: 10px;
  border-style: solid;
  border-top-color: #FF9900;
  border-right-color: #B40097;
  border-bottom-color: #7D9F00;
  border-left-color: #0D58A6;
  border-radius: 50%;
  width: 300px;
  height: 300px;
  background: transplant;
  -moz-transition: .5s;
  -webkit-transition: .5s;
  -o-transition: .5s;
  -ms-transition: .5s;
  transition: .5s;
}
#circle1 span:hover{
  top:-15px;
  left:-15px;
  border-width: 15px;
  -moz-transform: rotate(360deg);
  -webkit-transform: rotate(360deg);
  -o-transform: rotate(360deg);
  -ms-transform: rotate(360deg);
  transform: rotate(360deg);
}

ちょっと長いですが、順を追って考えていけばそんなに難しくはないと思います。CSS3(transition)で円の中心を基準に拡大する丸いボタンが並んだメニュー|Webparkもぜひご参考に。

使い方は色々あると思いますので、サンプルが思いついたらまた紹介します。

フィードやTwitterで最新情報をチェック
follow us in feedly
この記事に付いているタグの最新記事一覧
loading...
コメント









※コメントはご意見ご感想や間違いのご指摘等にしていただけますようお願いいたします。コメントを確認する時間がなく、技術的なご質問をいただいても答えできません。申し訳ございませんがご理解のほどお願いいたします。

Recent Entry
Popular Entry
  • このエントリーをはてなブックマークに追加