هل يوجد الكثير من CSS الآن؟ ذكاء بيانات PlatoBlockchain. البحث العمودي. عاي.

هل يوجد الكثير من CSS الآن؟

بصفتنا مطورين للواجهة الأمامية ، فقد أردنا الكثير من الأشياء على مر السنين - طرق لتوسيط الأشياء في CSS ، وتغليف الأنماط ، وتعيين نسبة العرض إلى الارتفاع للعنصر ، والحصول على تحكم أدق في ألواننا ، وتحديد عنصر بناءً على خصائص الأطفال ، وإدارة طبقات الخصوصية ، والسماح للعناصر بالاستجابة لعرض والديهم ... والقائمة تطول وتطول.

والآن بعد أن حصلنا على كل ما نتمناه وأكثر ، يسأل البعض منا - هل لدينا الآن كثير جدا CSS؟

الأوقات المظلمة

إذا كنت ، مثلي ، قد نشأت في تطوير الويب خلال طفولة CSS ، فإن فكرة وجود الكثير منها تبدو سخيفة.

في الماضي ، كان الوصف الوظيفي الكامل لمطور الواجهة الأمامية يتألف من التعامل مع قيود CSS. ال اختراق clearfix لمسح العوامات ، فإن اختراق الحشو بنسبة 100٪ لإنشاء مربعات divs ، ناهيك عن تطبيق الخصائص غير ذات الصلة بشكل شبه عشوائي لخداع Internet Explorer للقيام بالمزايدة.

في ذلك الوقت ، كان المتصفح عدوًا مراوغًا يجب هزيمته من خلال التعويذات الماكرة والغامضة. اليوم ، العقار المثالي في انتظارك ولصقه بعيدًا عن MDN.

العصر الجديد لـ CSS

لكن الأمور اليوم مختلفة إلى حد كبير: لا تتحرك الأشياء بشكل أسرع فحسب ، ولكن بائعي المستعرضات في الواقع يهتم حول إسعاد المطورين! أنا أعلم ، لم أصدق ذلك أيضًا. لكنني أدير سنويًا حالة CSS مسح المطورين (وهو افتح الآن بالمناسبة - اذهب وخذها!) وأنا أعلم حقيقة أن فرق تطوير المستعرض تستخدم نتائج الاستطلاع (من بين العديد من نقاط البيانات الأخرى) لإبلاغ خارطة الطريق الخاصة بهم.

علاوة على ذلك ، ساعدت Google أيضًا في تمويل عملي في الاستطلاع ، بل وظفت ليا فيرو لأخذ زمام المبادرة في اختيار أسئلة استطلاع هذا العام.

إنها ليست Google فقط. أصبح من المألوف أن تقوم بضرب Safari و Apple بشكل عام (أحيانًا تستحق ذلك) ، لكن لا يمكنك إنكار مدى شغف شخص ما جين سيمونز يتعلق بالاستماع إلى المطورين وتحسين الويب.

ولا يقتصر دور بائعي المستعرضات على تحسين CSS بأنفسهم ؛ بل إنهم يتعاونون عبر خطوط المعركة بمبادرات مثل إنتروب 2023 للمساعدة في تقليل التناقضات وعدم التوافق بين المتصفحات.

الكثير من الشيء الجيد؟

نتيجة كل هذا أننا نواجه الآن إحراجًا من ثروات CSS ، وقد يكون من الصعب اللحاق بالركب. شبكة CSS بدأت في الحصول على الدعم في المتصفحات الرئيسية منذ ما يقرب من خمس سنوات ، ومع ذلك ما زلت أتحقق من المرجع في كل مرة أستخدمه فيها. وبارد مثل شبكة فرعية يبدو أنني لم أجربها حتى الآن.

أثناء عملية الاختيار ميزات CSS التي يجب تضمينها أو عدم تضمينها في حالة CSS، لقد فكرت أنا ولي في العديد من الميزات ، لكننا رفضنا أيضًا عددًا قليلاً. بعض الأمثلة على الميزة نحن لم تشمل:

  • linear() وظيفة التخفيف، والذي يتيح لك تحديد منحنيات التخفيف بمزيد من التفصيل. 
  • env() وظيفة، والذي يتيح لك استخدام المتغيرات التي يحددها المتصفح أو الجهاز. 
  • scrollbar-width الخاصية ، والتي تساعد في التحكم في مظهر شريط التمرير. 
  • margin-trim الخاصية ، والتي تتيح لك التحكم في كيفية تصرف هوامش الأطفال في الحاوية. 

من المحتمل أن تكون هذه كلها مفيدة للغاية ، وكانت جميعها أخبارًا كبيرة خلال جفاف CSS في السنوات الماضية. ولكن في سياق اليوم ، يتعين عليهم الكفاح من أجل الاهتمام بإعلانات أكبر بكثير ، مثل has () selector أو CSS nesting!

غير متحمس

مثل Silvestar Bistrović يكتب، فهو "ليس متحمسًا لكل ميزات CSS الجديدة هذه." وجد هذا صدى على Twitter ، مع سارة سويدان توضح أن ما تهتم به هو "التطبيق العملي ، وليس كيف تبدو السمة لامعة في الوقت الحالي".

قد يبدو هذا موقفًا سلبيًا ، لكنني أعتقد أنه مفهوم. لا أحد يتوقع أن يواكب العديد من الميزات الجديدة!

هناك نتيجة أخرى غير مقصودة (أو ربما مقصودة؟) وهي أنه كلما أصبح CSS أكثر تعقيدًا ، زاد رفع مستوى أي شركة جديدة ترغب في تطوير محرك متصفح - ناهيك عن عبء العمل الإضافي عندما يتعلق الأمر بصيانة وتوثيق كل شيء هذه الميزات الجديدة. 

تجاوز CSS

هناك أيضًا قلق حقيقي للغاية من أن CSS قد تتفرع إلى مناطق ليست مناسبة تمامًا للتعامل معها. هذا شيء آخر أشارت إليه سارة سويدان عند رد فعلها على التطبيق التجريبي الجديد لـ CSS Toggles (ها هي تذكرة مناقشتها):

لقد أوضح الكثيرون نقطة معقولة جدًا مفادها أن هذا النوع من السلوك يمكن التعامل معه بشكل أفضل من خلال عنصر HTML جديد بدلاً من إدارة حالة التبديل فقط من خلال CSS ، وأن CSS قد لا يكون الوسيط الأفضل لضمان معالجة مشكلات إمكانية الوصول بشكل صحيح. 

عندما يستحوذ CSS على شيء تم التعامل معه مسبقًا من خلال JavaScript ، يُنظر إلى هذا بشكل عام على أنه أمر جيد ، لأنه غالبًا ما يقلل من مقدار الشفرة التي يجب على المتصفح تحميلها. لذلك ، أنا متفائل بحذر بشأن CSS Toggles وأثق في أن مجموعة عمل CSS ستعالج بشكل صحيح مخاوف المجتمع. ولكن قد يأتي يوم نبدأ فيه بالقلق من أن CSS قد تتوسع خارج حدودها وتتعدى على مسؤوليات HTML و JavaScript.

توقعات جديدة

وربما هذا ما يجب تغييره: ربما يجب أن نتخلى عن التوقعات التي يجب أن يعرفها مطورو CSS من جميع CSS؟ 

ينبع هذا التوقع من الأيام التي كانت فيها CSS فكرة متأخرة ، تلك البنية المزعجة الصغيرة التي كان عليك تعلمها لجعل الزر أزرق وجريءًا تمامًا كما طلب العميل. لكنني أعتقد أننا بحاجة إلى قبول أن CSS اليوم قد تكون كبيرة جدًا بحيث لا يمكن لشخص واحد إتقانها ، خاصةً بالإضافة إلى واجبات الواجهة الأمامية الأخرى.

As ميشيل باركر يقول:

وهذا هو المكان الذي هبطت فيه بنفسي في النهاية. لقد سلمت بحقيقة أنني ربما لن أستخدم أبدًا - أو حتى أعرف - جميع ميزات CSS الممكنة. وهذا قادم من شخص تجري دراسة استقصائية حول CSS!

لكن هذه الميزات الجديدة ستكون بالتأكيد مفيدة لـ شخص ما. سيقوم شخص ما بكتابة منشورات مدونة عنهم ، وإنشاء CodePens معهم ، وإلقاء محاضرات عنها. سيكون هذا الشخص مطورًا رائعًا وشابًا وحيويًا لا يزال يتمتع بشعره بالكامل. بمعنى آخر ، لن أكون أنا - ولا بأس بذلك. 

وربما تشعر بالقلق من أن هذا المطور الجديد سوف يغمره كل الأشياء التي يجب عليهم تعلمها في وقت واحد. لكن ضع في اعتبارك كل الأشياء التي قاموا بها ولن يجب التعرف عليها ، على وجه التحديد لأنه تم استبدالها بهذه البدائل الأحدث. أعلم أنني سأقبل هذه الصفقة في أي وقت.

لكن فكر في الأمر: في العامين الماضيين ، لم نشهد فقط زيادة هائلة في عدد الأجهزة التي نحتاج إلى توفيرها ، بل بدأنا أيضًا ندرك أننا جميعًا نستهلك الويب بطرق مختلفة قليلاً ، سواء كان ذلك بسبب للإعاقات أو السياق الحالي أو التفضيلات الشخصية فقط. ألا يجب أن تتكيف CSS مع هذا الواقع الجديد؟

الآن ، يجب أن أعترف أن كل هذا جعلني أشعر ببعض الحنين إلى الماضي ... لذا اعذرني بينما أذهب صافٍ بعض العوامات ، فقط من أجل الزمن القديم.


كما ذكرت ، سنوي مسح حالة CSS مفتوح الآن. سواء كنت تعتقد أن هناك الكثير من CSS أم لا ، فإن الاستطلاع طريقة رائعة للسماح لمطوري المتصفح بمعرفة ما تشعر به ، لذلك اذهب واملأها إذا كان لديك 10 دقائق. 

الطابع الزمني:

اكثر من الخدع المغلق