فهرست سرفصل‌های CSS
خانه (Home) CSS مقدمه CSS (Introduction) سینتکس CSS (Syntax) انتخاب گرهای CSS (Selectors) نحوه استفاده از CSS (How To) کامنت ها در CSS (Comments) ارورها در CSS (Errors) رنگ ها در CSS (Colors) رنگ ها - RGB و RGBA رنگ ها - هگز (HEX Colors) رنگ ها - HSL و HSLA پس زمینه (Backgrounds) پس زمینه - تصویر (Backgrounds Image) پس زمینه - تکرار تصویر (Backgrounds Image Repeat) پس زمینه - پیوست (Background Attachment) پس زمینه - کوتاه نویسی (Background Shorthand) کادرها (Borders) کادرها - عرض (Borders Width) کادرها - رنگ (Borders Color) کادرها - کناره ها (Borders Sides) کادرها - کوتاه نویسی (Shorthand Border Property) کادرها - گرد (Rounded Borders) لایه (Padding) ارتفاع، عرض و حداکثر عرض (Height, Width and Max-width) مدل جعبه ای (Box Model) خط پیرامونی (Outline) خط پیرامونی - ضخامت (Outline Width) خط پیرامونی - رنگ (Outline Color) خط پیرامونی - کوتاه نویسی (Outline Shorthand) خط پیرامونی - آفست (Outline Offset) متن - رنگ (Text Color) متن - چینش (Text Alignment) متن - تزئینات (Text Decoration) متن - تبدیل حروف (Text Transformation) متن - فاصله گذاری (Text Spacing) متن - سایه (Text Shadow) فونت ها (Fonts) فونت های وب سیف (Font Web Safe) فونت - جایگزین ها (Font Fallbacks) فونت - سبک (Font Style) فونت - اندازه (Font Size) فونت - گوگل (Font Google) فونت - کوتاه نویسی (Font Shorthand) آیکن ها در CSS (CSS Icons) لینک ها در CSS (CSS Links) فهرست ها در CSS (CSS Lists) جدول - کادرها (Table Borders) جدول - اندازه (Table Size) جدول - تراز (Table Alignment) جدول - استایل دهی (Table Styling) جدول - واکنش گرا (Table Responsive) نمایش/قابلیت دید (Display) حداکثر عرض (Max-width) موقعیت دهی (Position) شاخص Z (Z-index) سرریز (Overflow) شناوری (Float) شناوری - Float (Clear) شناوری - مثال ها (Float Examples) اینلاین-بلاک (Inline-block) تراز کردن (Align) ترکیب گرها (Combinators) کلاس های شبه (Pseudo-classes) عناصر شبه (Pseudo-elements) شفافیت/اپاسیتی (Opacity) نوار ناوبری - مقدمه (Navbar Intro) نوار ناوبری - عمودی (Vertical Navbar) نوار ناوبری - افقی (Horizontal Navbar) منوهای کشویی (Dropdowns) گالری تصاویر (Image Gallery) اسپرایت های تصویر (Image Sprites) انتخاب گرهای ویژگی (Attribute Selectors) فرم ها (Forms) شمارنده ها (Counters) واحدها (Units) اختصاصیت/اهمیت انتخاب گر (Specificity) !important (!important) توابع ریاضی (Math Functions) بهینه سازی/کارایی (Optimization) دسترس پذیری (Accessibility) چیدمان وب سایت (Website Layout) گوشه های گرد (Rounded Corners) تصاویر کادر (Border Images) پس زمینه - چندگانه (Multiple Backgrounds) پس زمینه - اندازه (Background Size) پس زمینه - مبدأ (Background Origin) پس زمینه - کلیپ (Background Clip) رنگ ها - پیشرفته (Colors - Advanced) کلیدواژه های رنگ (Color Keywords) گرادیان خطی (Linear Gradients) گرادیان شعاعی (Radial Gradients) گرادیان مخروطی (Conic Gradients) افکت های سایه (Shadow Effects) سایه جعبه (Box Shadow) افکت های متن (CSS Text Effects) فونت های سفارشی (CSS Custom Fonts) تبدیل های دو بعدی (CSS 2D Transforms) تبدیل های سه بعدی (CSS 3D Transforms) ترنزیشن ها (CSS Transitions) انیمیشن ها (CSS Animations) راهنما/تولتیپ (CSS Tooltips) استایل دهی تصویر (CSS Image Styling) مودال تصویر (CSS Image Modal) مرکزچین کردن تصویر (Image Centering) فیلترهای تصویر (Image Filters) اشکال تصویر (Image Shapes) object-fit (object-fit) object-position (object-position) ماسک گذاری - PNG (Masking - PNG) ماسک گذاری - گرادیان ها (Masking - Gradients) ماسک گذاری - SVG (Masking - SVG) دکمه ها (Buttons) صفحه بندی (Pagination) ستون های چندگانه (Multiple Columns) رابط کاربری (User Interface) تابع var() (The var() Function) بازنویسی متغیرها (Overriding Variables) متغیرها و جاوااسکریپت (Variables and JavaScript) متغیرها در کوئری های رسانه ای (Variables in MQ) @property (@property) جعبه بندی (Box Sizing) کوئری های رسانه ای (Media Queries) فلکس - مقدمه (Flexbox Intro) فلکس - کانتینر (Flex Container) فلکس - آیتم ها (Flex Items) فلکس - واکنش گرا (Flex Responsive) گرید - مقدمه (Grid Intro) گرید - ستون ها/سطرها (Grid Columns/Rows) گرید - خطوط (Grid Lines) گرید - کانتینر (Grid Container) گرید - آیتم (Grid Item) @supports (قانون @supports) RWD - مقدمه (RWD Intro) RWD - ویوپورت (RWD Viewport) RWD - گرید ویو (RWD Grid View) RWD - کوئری های رسانه ای (RWD Media Queries) RWD - تصاویر (RWD Images) RWD - ویدئوها (RWD Videos) RWD - فریم ورک ها (RWD Frameworks)
CSS

CSS — RWD - تصاویر (RWD Images)

آخرین بروزرسانی: 1404/07/23

تصاویر واکنش گرا (RWD Images)

«تصاویر واکنش گرا (Responsive Images)» باعث می شوند عکس ها در همه نمایشگرها درست مقیاس شوند. بنابراین با CSS می توان پهنا و نسبت تصویر را کنترل کرد و تجربه کاربری بهتری ساخت.

استفاده از width و height:auto

اگر width را درصدی و height را auto بگذارید، تصویر با ظرف خود کوچک و بزرگ می شود.

img { width: 100%; height: auto; }

هشدار: این روش می تواند تصویر را از اندازه اصلی بزرگ تر کند. در بسیاری موارد بهتر است از max-width استفاده کنید.

استفاده از max-width

با max-width:100% تصویر فقط کوچک می شود و هرگز از اندازه اصلی بزرگ تر نخواهد شد.

img { max-width: 100%; height: auto; }

افزودن تصویر به صفحه نمونه

برای تطبیق سریع با چیدمان، همان الگوی درصدی را به کار ببرید.

img { width: 100%; height: auto; }

تصاویر پس زمینه و background-size

پس زمینه نیز می تواند واکنش گرا باشد. سه الگوی رایج عبارت اند از contain، کشیدن کامل، و cover.

الگوی contain

div { width: 100%; height: 400px; background-image: url('img_flowers.jpg'); background-repeat: no-repeat; background-size: contain; border: 1px solid red; }

کشیدن 100% 100%

div { width: 100%; height: 400px; background-image: url('img_flowers.jpg'); background-size: 100% 100%; border: 1px solid red; }

الگوی cover

div { width: 100%; height: 400px; background-image: url('img_flowers.jpg'); background-size: cover; border: 1px solid red; }

نکته: مقدار cover نسبت تصویر را حفظ می کند؛ ممکن است بخشی از تصویر بریده شود.

تصاویر متفاوت برای دستگاه های متفاوت

برای کاهش ترافیک و بهبود سرعت، با «کوئری های رسانه ای» تصویر مناسب هر بازه عرضی را بارگذاری کنید.

/* کوچک تر از 400px */
body { background-image: url('img_smallflower.jpg'); }
/* 400px و بزرگ تر */
@media only screen and (min-width: 400px) { body { background-image: url('img_flowers.jpg'); } }

می توانید به جای min-width از min-device-width استفاده کنید تا اندازه دستگاه بررسی شود و با تغییر اندازه مرورگر، تصویر عوض نشود.

/* دستگاه های کوچک تر از 400px */
body { background-image: url('img_smallflower.jpg'); }
/* دستگاه های 400px و بزرگ تر */
@media only screen and (min-device-width: 400px) { body { background-image: url('img_flowers.jpg'); } }

عنصر HTML <picture>

عنصر <picture> انعطاف بیش تری برای منابع تصویر می دهد. ابتدا منبعی که با «شرط رسانه ای» سازگار است انتخاب می شود.

<picture>
  <source srcset="img_smallflower.jpg" media="(max-width: 400px)">
  <source srcset="img_flowers.jpg">
  <img src="img_flowers.jpg" alt="Flowers">
</picture>

نکته: یک تگ <img> به عنوان پشتیبان برای مرورگرهای قدیمی بگذارید. همچنین پیش از هر چیز، ویوپورت واکنش گرا را تنظیم کنید.

مطالعه بیشتر و مسیر یادگیری

برای مدیریت شرایط نمایش، از کوئری های رسانه ای کمک بگیرید. افزون براین، درباره تصاویر واکنش گرا نیز می توانید بیشتر بخوانید و الگوهای خود را کامل کنید.

برای جزئیات کامل، مستند MDN: background-size و راهنمای MDN: <picture> را ببینید.