ویژگی های جدید در CSS4
مفاهیم طراحی وبدر دنیای توسعه وب ، ابزار و تکنولوژی ها بطور مداوم در حال تحول می باشند. در حالی که برخی از آنها بطور طبیعی کارایی خود را از دست می دهند و کنار گذاشته می شوند ، برخی دیگر با نسل جدیدی از پیشرفت ، مسیر خود را ادامه می دهند. یکی از این ابزارهای رو به پیشرفت ، استایل شیت های آبشاری یا همان CSS می باشد. در حالی که تابع هایی را که CSS3 ارائه می دهد ، همچنان استفاده می کنیم، CSS4 در افق قرار گرفته است و انتظار می رود توسعه وب را در دست گرفته و به سمت مرتفع تری از ارائه ها ببرد تا توسعه دهندگان را یاری کند و انعطاف بیشتری به پروژه هایشان بدهد. حال ، مروری می کنیم بر CSS4 تا ببینیم چه انتظاراتی می توانیم از آن داشته باشیم.
قالب بندی واگنش گرا
طراحی واکنش گرا، آینده توسعه وب می باشد. می توان آن را با کوئری های @media حل و فصل کرده و ارائه های مختلفی برای چند وسیله مختلف و نمایشگرهای آنها فراهم کرد. با این حال ، مشکل اصلی همچنان در قسمت سرعت بارگذاری صفحات است چون تعداد قابل توجهی از کاربران نهایتا سرعت کانکشن کمی دارند. CSS4 ممکن است به این مشکل با طراحی واکنش گرا ، فیصله دهد. این ویژگی به سایت ها اجازه می دهد تا برای کاربران با کانکشن سرعت پایین ، استیت ها را از قبل بارگذاری کند. به مثال زیر توجه کنید :
@media (flux-capacitor: true)
{
88mph {
body { background: url('loading.gif'); }
}
}
سلکتورهای اصیل
ویژگی جالب دیگری که در CSS4 خواهیم دید ، سلکتورهای اصیل (parent selectors) می باشند. مشکلاتی در پیاده سازی تابع های مربوط به عناصر اصیل در حال فعال بودن عناصر دختر وجود داشت که طراحان از آن ناراضی بودند. حال این مشکل با سلکتور اصیل (با نشانه $ ) حل شده است. این سلکتورها به شما اجازه می دهند تا یک عنصر اصیل را بر پایه عنصر دختر آن ، استایل دهید. برای مثال :
$fieldset > input.error { background-color:red; }
اسکریپت شیت های آبشاری
کاری که این ویژگی انجام می دهد ، پل زدن و ایجاد شکاف بین جاوا اسکریپت و توسعه دهندگان CSS است. اسکریپت شیت های آبشاری استفاده و اجرای کد ها در function-style را ساده می کند. این ویژگی به شکل زیر ترتیب میگیرد :
*:hover { script: script(alert('CSS4 is Here')); }
اگر بخواهید چیزی شبیه این را در جاوااسکریپت به دست بیاورید ، مشابه ترکیب زیر خواهد بود :
var doc = document; var star = doc.all; window.hello_world = function(message) { message = message || 'CSS4 is Here'; alert(message); } for(var i = 0; i < star.length; i++) { if(star[i] && star[i].nodeName) { star[i].onmouseover = function() { if(window.hello_world) { hello_world(); } } } }
استایل شیت های سمت سرور (CLISS)
افرادی که در این زمینه کار می کنند می دانند چقدر دست یافتن به عملکرد مطلوب در وب سایت سخت است. CSS4 ماژول CLISS را در یک پیشنهاد معرفی کرده است تا آن را اصلاح کند. این عبارت مخفف Command-Line Interface Styling Scriptsheets است و به معنی "اسکریپت شیت های استایل دهنده رابط command-line" می باشد. این اسکریپت شیت ها اکثرا از ترکیب مشابهی استفاده می کنند اما می توانند فراتر از نمونه های معمول مثال زدنی CSS ، توسعه داده شوند. در صورتی که یک ماژول انتخابی بر روی سیستم نصب باشد ، command-line های یونیکس ، OS X و ویندوز را پشتیبانی خواهد کرد. ترکیب آن چیزی شبیه به این خواهد بود :
terminal {
background: url('puppies.gif'); color: #f0f; transform: rotate(-90deg);
} terminal error { display: none; /* Never write bad code again */ }
ترکیب های منطقی
CSS4 ترکیب منطقی جدیدی از pseudo-class به نام :matches() را با خود آورده است. این یکی از ویژگی هایی که می تواند زندگی را برای بسیاری از توسعه دهندگان آسانتر کند. این ویژگی هر نوع pseudo-class را تطبیق خواهد داد تا به شما اجازه دهد پروسه نوشتن CSS های تو در توی طولانی را ساده کنید. به یک مثال از استفاده از ترکیب منطقی در CSS توجه کنید :
copytextpop-up :matches(section, article, footer) ul { margin:0; } /* short for */ section ul, article, footer ul { margin:0; } /* or, you use use it this way */ :matches(:hover, :focus) { color:red; }
پشتیبانی استایل ایمیل مخصوص
اگر در مورد ایمیل های HTML صحبت می کنیم ، CSS همیشه یک ابزار بیش از اندازه مرتفع بوده و این کنسرسیوم جهانی وب را مجبور می کند تا راه حل محکم تری را برای تجربه با ایمیل های مستحکم و پایدار ، ارائه کند. CSS4 همین الان برای این مشکل پاسخی دارد. در اینجا ما در مورد استاده از CSS4 صحبت نمی کنیم. بلکه در مورد عدم استاده از آن صحبت می کنیم. توسعه دهندگان برای ایجاد این ایمیل ها ، بجای استایل شیت های درو خطی ، از تگ های محبوبی همچون <article> ، <section> و حتی <div> استفاده می کنند.
در این مطلب ما در مورد برخی از ویژگی های CSS4 صحبت کردیم. اما ویژگی های دیگری نیز وجود دارد که بعدها به آنها نیز اشاره خواهیم کرد. با این ویژگی های جدید می توان نسل جدیدی از وب سایت ها را ایجاد کرد و زندگی را نیز آسانتر.
نظر شما
>