دسته : آموزش رایگان CSS
SVG (Scalable Vector Graphics) یک فرمت گرافیکی برداری است که به شما امکان میدهد تصاویر را بهصورت برداری و مقیاسپذیر طراحی کنید و در صفحات وب استفاده کنید. SVG در مقایسه با تصاویر پیکسلی، دارای مزایای زیادی است، از جمله کاهش حجم فایلها، افزایش وضوح و امکان کنترل دقیق استایلها با استفاده از CSS. در این مقاله، با نحوه استفاده از SVG در صفحات وب و شیوههای استایلدهی آنها در CSS آشنا میشویم.
SVG به عنوان یک فرمت برداری مبتنی بر XML، برای ایجاد گرافیکهای با کیفیت و مقیاسپذیر استفاده میشود. این فرمت برای آیکونها، نمودارها و سایر تصاویر ساده که نیاز به بزرگنمایی و کوچکنمایی بدون افت کیفیت دارند، بسیار مناسب است. SVG را میتوان مستقیماً در HTML قرار داد یا به عنوان یک فایل خارجی پیوست کرد.
با کپی کردن کد SVG مستقیماً در HTML، میتوانید آن را با استفاده از CSS کنترل و استایلدهی کنید.
< svg width="100" height="100" viewBox="0 0 100 100" >
< circle cx="50" cy="50" r="40" stroke="black" stroke-width="3" fill="red" / >
< / svg >
در اینجا:
یک دایره قرمز با خط حاشیه مشکی داخل یک تگ SVG قرار داده شده است که میتواند با CSS استایلدهی شود.
میتوانید از تگ < img > برای افزودن فایل SVG خارجی به صفحه استفاده کنید.
< img src="icon.svg" alt="SVG Icon" >
نکته: با استفاده از این روش، کنترل CSS برای استایلدهی محدودتر خواهد بود.
میتوانید یک SVG را به عنوان پسزمینه یک عنصر با استفاده از ویژگی background-image در CSS تنظیم کنید.
.icon-background {
background-image: url('icon.svg');
width: 100px;
height: 100px;
}
هنگامی که SVG در HTML قرار داده میشود، میتوانید با CSS رنگ، اندازه، ضخامت خطوط و دیگر ویژگیهای آن را کنترل کنید.
تغییر رنگها با fill و stroke
fill: رنگ داخلی اشکال را تعیین میکند.
stroke: رنگ خطوط حاشیه را تعیین میکند.
svg {
width: 150px;
height: 150px;
}
circle {
fill: blue;
stroke: green;
stroke-width: 5;
}
در اینجا:
دایره داخل SVG به رنگ آبی (fill) و حاشیه سبز (stroke) با ضخامت 5px نمایش داده میشود.
currentColor به شما اجازه میدهد که رنگ عناصر SVG را مطابق با رنگ متن عنصر والد تنظیم کنید.
.icon {
color: red;
}
.icon svg path {
fill: currentColor;
}
در اینجا:
با تغییر رنگ color، رنگ عناصر داخلی SVG به صورت خودکار تغییر میکند.
با استفاده از کلاسها و IDها میتوانید به طور مستقیم به هر عنصر SVG استایلدهی کنید.
< svg width="100" height="100" viewBox="0 0 100 100" >
< circle class="circle" cx="50" cy="50" r="40" / >
< / svg >
.circle {
fill: #4caf50;
stroke: #333;
stroke-width: 4;
}
در اینجا:
با اضافه کردن کلاس .circle، رنگ داخلی و حاشیه دایره در SVG تغییر داده شده است.
میتوانید برای ایجاد جلوههای متحرک و پویا از انیمیشنهای CSS در SVG استفاده کنید.
انیمیشن fill برای تغییر رنگ داخلی
@keyframes fillColor {
0% { fill: red; }
100% { fill: yellow; }
}
.animated-circle {
animation: fillColor 2s infinite alternate;
}
با استفاده از stroke-dasharray و stroke-dashoffset میتوانید جلوهای مانند کشیدن خطوط ایجاد کنید.
.line {
stroke: blue;
stroke-width: 3;
stroke-dasharray: 100;
stroke-dashoffset: 100;
animation: draw 2s linear forwards;
}
@keyframes draw {
to {
stroke-dashoffset: 0;
}
}
در اینجا:
مقدار stroke-dasharray و stroke-dashoffset برای ایجاد انیمیشن به کار رفته است و افکتی مانند کشیدن خطوط را نشان میدهد.
با استفاده از ویژگیهای width و height در CSS، میتوانید اندازه SVG را بدون افت کیفیت تنظیم کنید.
.responsive-icon {
width: 50%;
height: auto;
}
در اینجا:
width به صورت درصدی تنظیم شده است که باعث واکنشگرایی SVG در نمایشگرهای مختلف میشود.
بهینهسازی فایلهای SVG: قبل از استفاده، فایلهای SVG را با ابزارهایی مانند SVGOMG یا SVGO بهینه کنید تا حجم فایل کاهش یابد و بارگذاری سریعتر انجام شود.
استفاده از currentColor برای هماهنگی با طرح رنگی سایت: با استفاده از currentColor میتوانید رنگ SVG را با رنگ متن هماهنگ کنید و استایلهای رنگی متفاوتی ایجاد کنید.
ایجاد آیکونهای واکنشگرا: از واحدهای درصدی یا vw و vh برای تنظیم اندازه SVG استفاده کنید تا در اندازههای مختلف صفحه به خوبی نمایش داده شوند.
استفاده محدود از انیمیشنها: اگرچه انیمیشنهای SVG میتوانند جذاب باشند، اما استفاده بیش از حد میتواند منجر به کاهش کارایی و بارگذاری طولانیتر شود. انیمیشنها را در بخشهای ضروری و بهینه به کار ببرید.
کار با SVG و کنترل استایل آنها در CSS میتواند به شما امکان دهد طراحیهای مدرن، پویا و با کیفیت بالایی ایجاد کنید. با استفاده از این تصاویر برداری، طراحیهایتان در دستگاههای مختلف به صورت واکنشگرا و بدون افت کیفیت باقی میمانند. یادگیری استفاده بهینه از SVGها و استایلدهی آنها در CSS به شما کمک میکند تا تجربه کاربری بهتری ارائه دهید و سایت خود را جذابتر کنید.
نظری یافت نشد
آموزش توسعه بازیهای ساده با استفاده از جاوا اسکریپت و Canvas API: راهنمای گام به گام
5م آبان 1403
مطالعه بیشتر
آموزش قالببندی متن در HTML: استفاده از تگها و CSS برای استایلدهی
23م مرداد 1402
مطالعه بیشتر
استفاده از visibility و opacity در CSS برای مخفیسازی عناصر: راهنمای کامل و کاربردی
11م آبان 1403
مطالعه بیشتر
آموزش ساخت یک برنامه ساده با Fetch API در جاوا اسکریپت: راهنمای گام به گام
1م آبان 1403
مطالعه بیشتر
آموزش جامع حلقههای for و while در جاوا اسکریپت: نحوه استفاده و کاربردها
2م بهمن 1402
مطالعه بیشتر
کار با border و تنظیمات آن در CSS: مدیریت زوایای گرد با border-radius
9م آبان 1403
مطالعه بیشتر
استفاده از clip-path در CSS برای برشهای زیبا و جذاب: راهنمای کامل
16م آبان 1403
مطالعه بیشتر
استفاده از display در CSS: تغییر نحوه نمایش عناصر - راهنمای جامع
9م آبان 1403
مطالعه بیشتر
آموزش اصول کار با WebSockets و ارتباطات بلادرنگ در وب: راهنمای کامل
5م آبان 1403
مطالعه بیشتر
آموزش استفاده از box-shadow و text-shadow در CSS: ایجاد سایههای زیبا و جذاب
11م آبان 1403
مطالعه بیشتر
Async/Await: نوشتن کدهای خواناتر و ناهمزمان در جاوا اسکریپت - آموزش کامل با مثالها
30م مهر 1403
مطالعه بیشتر
مفهوم برنامهنویسی همزمان و ناهمزمان در جاوا اسکریپت: تفاوتها، مثالها و کاربردها
29م مهر 1403
مطالعه بیشتر
تمامی حقوق معتلق به ناشر سایت است و کپی از آن پیگرد قانونی دارد