CSS clip-path generatoru
Hazır fiquru seçin və ya nöqtələri interaktiv şəkildə sürüşdürün — nəticə dərhal önizləmədə görünür və hazır clip-path kodu yenilənir.
.shape {
clip-path: polygon(50% 0%, 100% 38%, 82% 100%, 18% 100%, 0% 38%);
}
Necə istifadə etmək olar
- Hazır fiqurlardan birini seçin (üçbucaq, trapes, ox, şevron, ulduz, kəsilmiş künclər və s.) və ya sərbəst poliqon qurun.
- Önizləmədə nöqtələri mausla və ya toxunuşla istədiyiniz yerə çəkin; hər nöqtənin dəqiq faiz koordinatları idarəetmə panelində görünür.
- İstəyə görə «Dairə» (circle), «Ellips» (ellipse) və ya «Daxili kəsim» (inset) rejiminə keçin və radiusu tənzimləyin.
- Fon növünü (qradiyent, foto və ya tünd fon) dəyişərək kəsilmiş sahənin şəffaflığını yoxlayın və «Kopyala» düyməsini basın.
Bu necə işləyir
clip-path nədir və necə işləyir?
clip-path xassəsi elementin görünən sahəsini təyin edir. Fiqurdan kənarda qalan hər şey görünməz olur və klikləri qəbul etmir. Köhnə clip xassəsindən fərqli olaraq, clip-path müasir vektor formalarını dəstəkləyir və elementin mütləq position: absolute olmasını tələb etmir.
.element {
clip-path: polygon(50% 0%, 100% 100%, 0% 100%);
}
polygon() sintaksisi və koordinat oxları
polygon(x1 y1, x2 y2, ...) nöqtələr ardıcıllığıdır. Koordinatlar elementin sol yuxarı küncündən (0% 0%) sağ aşağı küncünə (100% 100%) qədər hesablanır. Nöqtələr saat əqrəbi istiqamətində verilməlidir. Faizin əvəzinə px və rem də istifadə edilə bilər.
clip-path: polygon(0 0, 100% 0, 100% calc(100% - 30px), 0 100%);
circle(), ellipse() və inset()
circle(radius at x y) mərkəz nöqtəsi olan dairəvi kəsim yaradır. ellipse(rx ry at x y) fərqli üfüqi və şaquli radiuslara imkan verir. inset(top right bottom left round radius) isə kənarlardan daxilə çəkilmiş düzbucaqlı kəsimdir və border-radius kimi dəyirmi künclər qəbul edir.
clip-path: circle(50% at center);
clip-path: inset(10px 20px round 12px);
clip-path və animasiya
clip-path eyni sayda və eyni növ nöqtələrə malik olduqda transition və ya @keyframes ilə rəvan animasiya edilə bilər. Məsələn, 4 nöqtəli düzbucaqlıdan 4 nöqtəli trapesə keçid mümkündür, lakin 3 nöqtəli üçbucaqdan 5 nöqtəli ulduza birbaşa CSS keçidi aparıla bilməz.
clip-path və kölgələr (box-shadow)
Vacib məqam: clip-path elementin öz box-shadow kölgəsini də kəsir! Kəsilmiş fiqura kölgə vermək üçün həmin elementin özünə və ya onun valideyninə filter: drop-shadow(...) tətbiq olunur — bu filtr kəsilmiş konturu izləyir.
.card {
clip-path: polygon(0 0, 100% 0, 85% 100%, 0 100%);
filter: drop-shadow(0 10px 15px rgba(0, 0, 0, 0.2));
}
Tez-tez verilən suallar
Niyə box-shadow clip-path ilə işləmir?
clip-path elementin qutusundan çıxan hər şeyi, o cümlədən box-shadow-u kəsir. Həll: elementə filter: drop-shadow(0 8px 16px rgba(0,0,0,0.25)) verin.
Kəsilmiş hissədəki mətni kursor seçə bilərmi?
Xeyr. clip-path ilə kəsilmiş hissələr vizual olaraq yox olur və istifadəçi qarşılıqlı əlaqəsi (klik, hover, mətn seçimi) həmin sahədə işləmir.
clip-path brauzerlərdə yaxşı dəstəklənirmi?
Bəli, clip-path bütün müasir brauzerlərdə tam dəstəklənir (Chrome, Firefox, Safari, Edge). Əvvəllər tələb olunan -webkit-clip-path prefiksi indi yalnız çox köhnə WebKit versiyaları üçün lazımdır.
SVG ilə fərqi nədir?
clip-path: url(#my-path) vasitəsilə mürəkkəb SVG clipPath xətlərini də bağlamaq olar. Sadə həndəsi formalar, düymələr və banner kəsimləri üçün isə CSS-də birbaşa polygon() yazmaq daha sürətli və rahatdır.