محول CSS إلى كائن نمط JavaScript
مرشد
محول CSS إلى كائن نمط JavaScript
يحول مبدل حقل الطابع من CSS إلى JavaScript إلى عينة نمطية للJavaScript، وتحويلها مرة أخرى. سواء كنت تعمل مع styles inline في React، أو ملفات الأنماط الخاصة بـ React Native، أو مكتبات CSS-in-JS مثل styled-components و Emotion، فإن هذا الأداة يقوم بتحويلها بشكل فوري – لا تحتاج الآن إلى إعادة كتابة camelCase يدويًا.
كيفية استخدام
أضف declarations CSS إلى لوحة الإدخال. اختر تنسيق إخراجك المفضل — **مستyles inline React**, **الملفات العمودية للReact Native**, أو **الخيوط المعتمدة من styled-components**. يعالج المحول كل خاصية في الوقت الفعلي: أسماء مفصولة بالخطاف تتحول إلى camelCase، وتكون القيم مقتبسة بشكل صحيح أو حفظت على أنها أرقام، ويُعالج أيضًا المسبقات البيعية. يمكنك أيضًا تحويلًا عكسيًا عن طريق تبديل إلى وضع CSS → JS. انقر فوق زر **النسخ** لاختراق النتيجة.
خصائص
- تحويل اتجاهي تحويل stylesheet من CSS إلى Objects JavaScript أو إعادة تحويلها من Objects JavaScript إلى CSS باستخدام زر واحد فقط.
- أشكال إخراج متعددة – دعم استyles في React (الاختصارات داخل الرمز)، و **StyleSheets** في React Native، و **styled-components/Emotion** (المحوريات المعتمدة على المحوريات) --- *(Note: "React inline styles" translated as "اختصارات داخل الرمز" to avoid ambiguity in Arabic naming conventions. StyleSheet remains as-is since it's a technical term.)*
- **الكamel كاس** تحويلًا صحيحًا للمصطلحات ذات النقاط المنفصلة في الخصائص الإشاريّة (الخلفية اللون → الخلفية لون)
- معالجة بادئات البائع تحويل الخصائص المسبوقة بـ `-webkit-`, `-moz-`, `-ms-` بشكل صحيح (على سبيل المثال، `-webkit-transform` إلى **WebkitTransform**).
- التحديد القيم العددية – يحافظ على الأرقام الناقصة كما هي (لا يتغير هامش 0 إلى "0" بل يبقى 0) بينما يورد القيم النصية كقيمة نصية.
- مُحسَن ل**رَنتِك** نَاطِجَة – يحوّل وحدات البيكسل إلى أرقام عند هدف React Native
- المعالجة في الوقت الفعلي التحويل يحدث بشكل فوري أثناء كتابةك
- نسخ بنقرة واحدة – نسخ خادمك المخرج المحول إلى محرر القطع *(Note: The phrase "converted output" was translated as "المخرج المحول" since "output" in this context refers to the copied text itself.)*
التعليمات
-
لماذا يجب أن تكون خصائص CSS في نمط camelCase في لغة JavaScript؟
الكلمات المفاتيحة في الكائنات الخاصة بالJavaScript لا يمكن أن تحتوي على نطاقات إلا إذا تم إشارتها. حيث يستخدم Properties مثل `background-color` و `font-size` نطاقات، يجب تحويلها إلى camelCase (`backgroundColor`, `fontSize`) لتعمل كمفاتيح غير مشارة للكائنات. هذا هو متطلبات Specification لغة JavaScript، وليس convention لمؤسسة.
-
ما الفروقات بين **الملصقات الداخلية** و **CSS في JavaScript**؟
الأنماط المتضمنة (inline) هي_objectsJavaScript تُرسل مباشرة إلى خاصية `style` لمكون، وتستطيع فقط مجموعة محدودة من CSS (لا تشمل المحددات البصرية، أو الاستجابات الإعلامية، أو التسلسلات الزمنية). يُستخدمُ مكتبات CSS-in-JS مثل **styled-components** و**Emotion** لإنتاج CSS حقيقي في وقت التنفيذ أو بناء، ويغطي كامل ميثاق CSS بما في ذلك المحددات البصرية، والتسلسلات الزمنية، والاستجابات الإعلامية بينما يُكتبُ في لغة JavaScript.
-
كيف يتم التعامل مع الوحدات الخاصة بالCSS في **React Native** بشكل مختلف؟
يستخدم **React Native** الأرقام بدون وحدة قياس للابعاد - كتابة عرض: 100 تعني 100 بيكسل مستقل عن الكثافة. لا يدعم وحدات CSS مثل البيكسل (px)، اليم (em)، الريم (rem) أو الوحدات العمودية (vh). يتم دعم القيم بالمئة لبعض الخصائص باستخدام النصوص (على سبيل المثال، العرض: '50٪'). هذا لأن **React Native** يرمز إلى Views محلية، وليس DOM لصفحة الويب، لذلك لا معنى لوحدات مخصصة للإنترنت.
-
كيف يتم معالجة المسبقات للموردين في الكائنات ذات نمط لغة جافا سكريبت؟
في الكائنات ذات نمط لغة JavaScript، تتبع الخصائص المسبقة للموردين نمط capitalize خاصًا في capitalization. تفقد المسبق حرف الهاء الأول ويcapitalize: `-webkit-transform` يصبح **WebkitTransform**، `-moz-appearance` يصبح **MozAppearance**. تستخدم React وframeworks أخرى هذا convention لتطبيق الأنماط الخاصة بالمورد بشكل صحيح في إخراج المخرج. --- *Note: The translation above follows the original structure and capitalization, including the use of bold for framework names. If you need a more formal or less stylized version, let me know.*
تثبيت ملحقاتنا
أضف أدوات IO إلى متصفحك المفضل للوصول الفوري والبحث بشكل أسرع
恵 وصلت لوحة النتائج!
لوحة النتائج هي طريقة ممتعة لتتبع ألعابك، يتم تخزين جميع البيانات في متصفحك. المزيد من الميزات قريبا!
