CSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説

黄舟
リリース: 2017-05-21 16:22:35
オリジナル
2639 人が閲覧しました

今日はCSS3の知識の整理を始めました

本当は昨夜書くべきだったのですが、急性胃腸炎だったらしく、痛みで一晩中眠れませんでした、青い薄いキノコ
幸いです。今日は点滴打って寝れば大丈夫、ほら ここで食べる時は気を付けたほうがいいよ、お腹がリベンジしたよ
CSSは難しくないけど、ブラウザで試しながら読んでみてください、後で覚えます試してみてください
やってみなければすべて無駄です


CSS3 ブラウザには互換性の問題があります
異なるブラウザには異なるプレフィックスが付いたプライベート 属性 があり、その属性やルールがまだ標準になっていないことを示しています
つまり、公式の標準が発表される前に、各ブラウザはすでにそれを活用しています
しかし、実際の標準は将来的には必ずしもそうなるとは限りません 何をすべきか、ただプレフィックスを追加するだけです
ブラウザの新しいバージョンでは必要ありません。今プレフィックスを追加するには、互換性を確保するためにまだ記述する必要があります

chrfirefox IEopear

border-radius 角丸

radius は半径を意味します
CSS3 より前にこの効果を実現するには、おそらく Photoshop
を使用するのが最良の方法です。この属性は要素に「角丸」を追加するために使用できます
Forたとえば、要素を円にすると

<p class="demo"></p>
ログイン後にコピー
.demo {    width: 100px;    height: 100px;    backgCSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説-color: gold;    border-radius: 50%;}
ログイン後にコピー

CSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説

border-radius 属性の値が 50% のときに、なぜ円になるのでしょうか?
CSS の理解に基づくと、これは border-radius: 50% 50% 50% 50%; と同等の複合属性である必要があります。 border-radius: 50% 50% 50% 50%;
border-radius可以拆分为

  • border-top-left-radius:CSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説左上角的弧度

  • border-top-rigtht-radius:CSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説右上角的弧度

  • border-bottom-left-radius:CSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説左下角的弧度

  • border-bottom-rigtht-radius:CSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説右下角的弧度

所以它和下面的代码等价,但是我们不要写这么麻烦的

.demo {    width: 100px;    height: 100px;    backgCSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説-color: gold;    border-top-left-radius: 50%;    border-top-right-radius: 50%;    border-bottom-left-radius: 50%;    border-bottom-right-radius: 50%;}
ログイン後にコピー

就拿这个border-top-left-radius: 50%来说

CSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説

实际上它相当于在元素盒的坐上画一个矩形,矩形的宽高就是元素的一半(50%)
并且以靠近元素内部的点为圆心画弧
于是四个属性合在一起,就成了一个圆

这个属性还可以更复杂
下面的代码是等价的

.demo {    width: 100px;    height: 100px;    backgCSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説-color: gold;    border-top-left-radius: 10px 20px;    border-top-right-radius: 20px 30px;    border-bottom-right-radius: 30px 40px;    border-bottom-left-radius: 40px 50px;}
ログイン後にコピー
.demo {    width: 100px;    height: 100px;    backgCSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説-color: gold;    border-radius: 10px 20px 30px 40px / 20px 30px 40px 50px;}
ログイン後にコピー

注意顺序是顺时针:左上、右上、右下、左下
这样丧心病狂的写法还真的不常见
子属性看起来是复合属性border-top-left-radius: 10px 20px;
但其实不是,好奇的我尝试了一下发现并没有border-top-left-radius-x这个属性
第一个数字表示矩形x轴方向的距离,第二个数字表示矩形y轴方向的距离,
不要让前面的top-left误导你
css中所有类似属性的都是x轴在前,y轴在后
比如<a href="http://www.php.cn/wiki/896.html" target="_blank">backgCSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説-position</a>复合属性就是backgCSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説-position-x在前,backgCSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説-position-y在后

通过这个好玩的属性,我们可以做CSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説

.demo {    width: 200px;    height: 100px;    backgCSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説-color: orangered;    border-radius: 100px 100px 0 0 / 100px 100px 0 0;}
ログイン後にコピー

CSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説

做一个CSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説

.demo {    width: 200px;    height: 100px;    backgCSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説-color: greenyellow;    border-radius: 200px 0 200px 0 / 100px 0 100px 0;}
ログイン後にコピー

CSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説

和我们的padding、margin等复合属性类似

写1个值 border-radius: 10px –> ↖/↗/↘/↙
写2个值 border-radius: 10px 20px –> ↖/↘,↗/↙
写3个值 border-radius: 10px 20px 30px –> ↖,↗/↙,↘
写4个值 border-radius: 10px 20px 30px 40pxborder-radius は

に分割できます

border- top

-left-radius: 境界線の左上隅の円弧

CSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説border-top-right-radius : 境界線の右上隅の円弧



border-
bottom

-left-radius: 境界線の左下隅のラジアン

CSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説

border-bottom-righttht-radius: 境界線の右下隅のラジアン
したがって、それは等価です下のコードに書きますが、そんな面倒なことは書かないでください

.demo {    width: 200px;    height: 100px;    backgCSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説-color: greenyellow;    border-radius: 200px 0 200px 0 / 100px 0 100px 0;    box-shadow: 10px 20px;}
ログイン後にコピー

これを border-top-left-radius: 50%にしてくださいCSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説

ここに画像の説明を書きます

実際には、座席に長方形を描くのと同じです。要素ボックス。長方形の幅と高さは要素の半分 (50%) です

そして要素の内側に近い点で円の中心となる円弧を描きます

これで 4 つの属性が合わさって円になります

CSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説

この属性はさらに複雑になる可能性があります
次のコードは同等です

.demo {    width: 200px;    height: 100px;    backgCSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説-color: greenyellow;    border-radius: 200px 0 200px 0 / 100px 0 100px 0;    box-shadow: 20px 20px 5px 5px green,                40px 40px 5px 5px;}
ログイン後にコピー
.demo {    width: 200px;    height: 200px;    backgCSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説-color: black;    border-radius: 50%;    box-shadow: 40px 40px 0 0 yellow inset;}
ログイン後にコピー
ブラウザ プレフィックス
ome/safari-webkit
-モズ
-ms
-o

以上がCSS3の角丸・ボックスシャドウ・枠線画像について詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!