ستايلس (لغة تنسيق صفحات الويب)
ستايلس (بالإنجليزية: Stylus stylesheet language) هي لغة معالج مسبق لورقة أنماط ديناميكية يتم تجميعها في أوراق الأنماط المتتالية.[4]
تاريخ
الأكثر استخدامًا في تركيب معالجات الـ أوراق الأنماط المتتالية
تم إنشاؤه بواسطة TJ Holowaychuk، وهو مبرمج سابق لـ نود.جي إس ومؤسس لغة Luna.
مكتوبة في جيد (لغة برمجة) [الإنجليزية] ونود.جي إس.
المحددات
على عكس أوراق الأنماط المتتالية، الذي يستخدم الأقواس لفتح وإغلاق كتل الإعلان، يتم استخدام المسافة البادئة.
بالإضافة إلى ذلك، يتم حذف الفاصلة المنقوطة (؛) اختياريًا. ومن ثم، فإن أوراق الأنماط المتتالية التالية:
body {
color: white;
}
يمكن تقصيرها إلى:
body
color: white
علاوة على ذلك، فإن النقطتين (:) والفاصلات (،) اختيارية أيضًا؛ هذا يعني أنه يمكن كتابة ما سبق،
body
color white
المتغيرات
تسمح ستايلس بتحديد المتغيرات، ولكن على عكس لس وساس، فإنه لا يستخدم رمزًا لتحديد المتغيرات.
بالإضافة إلى ذلك، يتم إجراء التخصيص المتغير تلقائيًا عن طريق فصل الخاصية والكلمات الرئيسية. بهذه الطريقة، فإن المتغيرات تشبه المتغيرات في بايثون.
message = 'Hello, World!'
div::before
content message
color #ffffff
سيقوم مترجم Stylus بترجمة المستند أعلاه إلى:
div::before {
content: 'Hello, World!';
color: #ffffff;
}
الخلطات والوظائف
يتم تعريف كل من الخلطات والوظائف بنفس الطريقة، ولكن يتم تطبيقها بطرق مختلفة.
على سبيل المثال، إذا أردت تحديد خاصية CSS border radius دون الحاجة إلى استخدام بادئات Vendor مختلفة، يمكنك إنشاء:
border-radius(n)
-webkit-border-radius n
-moz-border-radius n
border-radius n
بعد ذلك، لتضمين هذا على أنه mixin، يمكنك الإشارة إليه على النحو التالي:
div.rectangle
border-radius(10px)
هذا من شأنه أن يترجم إلى:
div.rectangle {
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
}
استيفاء
لتضمين المتغيرات في الوسيطات والمعرفات، تحيط الأحرف المتدرجة بالمتغير (المتغيرات). فمثلا،
-webkit-{'border' + '-radius'}
بتقييم إلى
-webkit-border-radius
مراجع
- وصلة مرجع: https://github.com/LearnBoost/stylus/blob/master/LICENSE.
- الوصول: 7 أكتوبر 2016.
- الوصول: 9 يناير 2017. وصلة مرجع: https://api.github.com/repos/LearnBoost/stylus.
- Poll Results: Popularity of CSS Preprocessors نسخة محفوظة 9 مايو 2021 على موقع واي باك مشين.