零基础入门:CSS和SVG代码制完美圆形教程
浣犳槸涓嶆槸涔熼亣鍒拌繃杩欎簺鎯呭喌锛燄煉㈢敤PS鎷変簡鍗婂ぉ鎬诲涓嶉綈鍦嗗績銆佹墜缁樼殑鍦嗗儚琚嫍鍟冭繃銆佸仛缃戦〉鏃惰€佹澘闈炶閭d釜"姝e埌鍙戝厜鐨勫渾"...鍒厡锛佷粖澶╁挶浠氨鐢ㄢ€?strong>鈥?鍒嗛挓鍖呬細鈥?/strong>鈥嬬殑鍌荤摐鏁欑▼锛屾妸CSS鍜孲VG鐢诲渾鐨勭瀵嗗叏鎶栧嚭鏉ワ紒
涓€銆丆SS鐢诲渾锛?琛屼唬鐮佺鏉€PS楂樻墜鉁?/h3>
鍏堣浣忚繖涓竾鑳藉叕寮忥細鈥?strong>鈥嬪楂樼浉绛?50%鍦嗚=瀹岀編鍦嗏€?/strong>鈥嬶紒灏卞儚鍋氱厧楗兼灉瀛愶紝闈㈢硦鎽婂寑浜嗘墠鑳藉渾銆?/p>
css澶嶅埗.circle { width: 100px; /* 鐩村緞浣犺浜嗙畻 */ height: 100px; /* 蹇呴』鍜屽搴︿竴鏍凤紒 */ background: #ff6b6b; /* 鎹㈡垚浣犲枩娆㈢殑棰滆壊 */ border-radius: 50%; /* 榄旀硶鍙戠敓鍦ㄨ繖閲岋紒 */ }
![CSS鍦嗗舰绀烘剰鍥綸
鈥?strong>鈥嬪父瑙佺炕杞︾幇鍦衡€?/strong>鈥嬶細
- 瀹介珮涓嶇浉绛夆啋鍙樻垚妞渾锛堝埆闂垜鎬庝箞鐭ラ亾鐨勷煒級
- 鐖剁骇鏈塷verflow:hidden鈫掑渾琚垏杈?/li>
- 鐢╲w鍗曚綅鈫掓墜鏈哄睆骞曞ぇ灏忎笉鍚屼細鍙樺舰
鈥?strong>鈥嬭繘闃舵妧宸р€?/strong>鈥嬶細
- 鐢╟lip-path鐢婚晜绌哄渾锛?code>clip-path: circle(50% at center);
- 娓愬彉鍦嗙幆锛?code>background: radial-gradient(#ff6b6b, #ff0000);
浜屻€丼VG鐢诲渾锛氱煝閲忓浘褰㈢殑闄嶇淮鎵撳嚮馃殌
瑕佽涓撲笟搴︼紝SVG鎵嶆槸鐢诲渾鐣岀殑鎵湴鍍э紒鐪嬬湅杩欎釜姣旂敳鏂硅繕涓ヨ皑鐨勪唬鐮侊細
html杩愯澶嶅埗<svg width="200" height="200"> <circle cx="100" cy="100" r="80" fill="none" stroke="#4ecdc4" stroke-width="10"/> svg>
鈥?strong>鈥嬪弬鏁拌鏄庝功鈥?/strong>鈥嬶細
cx/cy
锛氬渾蹇冨潗鏍囷紙SVG鐢诲竷浠庡乏涓婅寮€濮嬬畻锛侊級r
锛氬崐寰勶紙鍒秴杩囩敾甯冨昂瀵哥殑涓€鍗婏級stroke-dasharray
锛氳櫄绾胯竟妗嗙鍣?/li>
鈥?strong>鈥嬩负浠€涔堣璁″笀閮界埍SVG锛熲€?/strong>鈥?/p>
- 鏀惧ぇ100鍊嶉兘涓嶇硦锛堢敳鏂规渶鐖?K鏁堟灉锛?/li>
- 鑳界洿鎺ユ敼棰滆壊/绮楃粏锛堜笉鐢ㄩ噸鏂板垏鍥撅級
- 鏀寔鍔ㄧ敾锛佹瘮濡傝繘搴︽潯鏃嬭浆鏁堟灉
涓夈€丆SS vs SVG 涓栫邯澶K馃啔
鎴戝仛浜嗕釜瀵规瘮琛紝鐪嬪畬灏辩煡閬撹閫夎皝锛?/p>
鐗规€?/th> | CSS鍦嗗舰 | SVG鍦嗗舰 |
---|---|---|
浠g爜澶嶆潅搴?/td> | 猸愶笍猸愶笍猸愶笍猸愶笍猸愶笍 | 猸愶笍猸愶笍猸愶笍 |
鍙缉鏀炬€?/td> | 猸愶笍猸愶笍 | 猸愶笍猸愶笍猸愶笍猸愶笍猸愶笍 |
鍔ㄧ敾鏀寔 | 鍩虹鏃嬭浆 | 璺緞鍔ㄧ敾 |
閫傜敤鍦烘櫙 | 鎸夐挳/澶村儚 | 鍥炬爣/鏁版嵁鍙鍖?/td> |
鏂囦欢澶у皬 | 灏?/td> | 绋嶅ぇ |
鈥?strong>鈥嬩釜浜鸿娉粡楠屸€?/strong>鈥嬶細
- 鍋氱綉椤垫寜閽敤CSS锛堟敼棰滆壊鏂逛究锛?/li>
- 鍋歀OGO鐢⊿VG锛堝嵃鍒风骇绮惧害锛?/li>
- 鍋氬姞杞藉姩鐢讳袱涓竴璧蜂笂锛?/li>
鍥涖€佺枒闅炬潅鐥囨€ユ晳瀹ゐ煔?/h3>
鈥?strong>鈥婹锛氭垜鐨勫渾涓哄暐鏈夐敮榻匡紵鈥?/strong>鈥?br/>
鈫?璇曡瘯transform: translateZ(0);
寮€鍚疓PU娓叉煋
鈥?strong>鈥婹锛歋VG鍦嗗湪鎵嬫満涓婃樉绀轰笉鍏紵鈥?/strong>鈥?br/> 鈫?妫€鏌iewport璁剧疆锛?code>
鈥?strong>鈥婹锛氭兂瑕佹笎鍙樿壊鍦嗙幆鎬庝箞鍔烇紵鈥?/strong>鈥?br/> 鈫?CSS鐢ㄤ吉鍏冪礌鍙犲姞锛?/p>
css澶嶅埗.circle::after { content: ''; position: absolute; border-radius: 50%; background: linear-gradient(red, yellow); }
浜斻€?024骞存渶鏂板渾鍨嬮粦绉戞妧馃挕
鏈€杩戝府瀹㈡埛鍋氶」鐩椂鍙戠幇涓獨鎿嶄綔鈥斺€斺€?strong>鈥嬬敤CSS鍙橀噺鎺у埗鍦嗗ぇ灏忊€?/strong>鈥嬶細
css澶嶅埗:root { --circle-size: 80px; } .circle { width: var(--circle-size); height: var(--circle-size); }
鎵嬫満绔竴閿垏鎹㈠昂瀵歌秴鏂逛究锛佸啀鍋峰伔鍛婅瘔浣犱滑锛岀幇鍦ㄥぇ鍘傛祦琛屸€?strong>鈥?D鎮诞鍦嗏€?/strong>鈥嬫晥鏋滐紝鐢?code>transform: rotate3d()灏辫兘瀹炵幇锛?/p>
灏忕紪绉佹埧璇?/h3>
鏁欎簡杩欎箞澶氬勾璁捐锛屽彂鐜板緢澶氫汉鍗″湪"瀹岀編涓讳箟"鈥斺€斿叾瀹炵綉椤典笂鏍规湰涓嶉渶瑕佺粷瀵瑰畬缇庣殑鍦嗭紒浜虹溂鏈?.5px鐨勮瑙夎宸紝鍙鈥?strong>鈥嬫暣浣撳崗璋冣€?/strong>鈥嬫瘮鏁板绮惧噯鏇撮噸瑕併€備笅娆¢亣鍒扮敳鏂圭籂缁?涓嶅鍦?锛屼笉濡ㄧ粰浠栫湅杩欑瘒鏂囩珷锛屽寘娌诲悇绉嶇敾鍦嗙劍铏戠棁锛?/p>
本文由嘻道妙招独家原创,未经允许,严禁转载