الصفحة الرئيسية » الترميز » CSS3 التدرجات الخطية [نصائح CSS3]

    CSS3 التدرجات الخطية [نصائح CSS3]

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

    إذا كنت قد لعبت مع التدرجات في CSS3 ، فربما تكون على دراية بالطريقتين: التدرج الشعاعي والخطي. وظيفة اليوم ستكون حول الأخير.

    خلق التدرجات

    نظرًا لأن المواصفات تشير إلى أن التدرجات في CSS3 هي صورة ، فليس لها خاصية خاصة مثل إضافة ميزة جديدة أخرى ، لذلك يتم الإعلان عنها باستخدام الصورة الخلفية الملكية بدلا من ذلك.

    إذا ألقينا نظرة على بناء الجملة الكامل للتدرج اللوني ، فإنه يبدو قليلاً متخم, مما قد يؤدي إلى الارتباك لبعض الناس.

     div background-image: -webkit-linear-gradient (top، # FF5A00 0٪، # FFAE00 100٪)؛ خلفية الصورة: - التدرج اللوني الخطي (أعلى ، # FF5A00 0٪ ، # FFAE00 100٪) ؛ خلفية الصورة: -ms-linear-gradient (أعلى ، # FF5A00 0٪ ، # FFAE00 100٪) ؛ خلفية الصورة: -o-linear-gradient (أعلى ، # FF5A00 0٪ ، # FFAE00 100٪) ؛ صورة الخلفية: التدرج الخطي (أعلى ، # FF5A00 0٪ ، # FFAE00 100٪) ؛  

    لذلك دعونا نحفر في كل جزء من بناء الجملة واحدًا تلو الآخر لجعل الأمور أكثر وضوحًا.

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

     div background-image: linear-gradient (top، # FF5A00، # FFAE00)؛  

    المقتطف أعلاه هو الإصدار الرسمي من W3C لإنشاء التدرجات. إنها في الواقع أبسط وتفسر نفسها بنفسها وستؤدي أيضًا إلى إنشاء التدرج التالي.

    تستطيع ايضا استخذام الأسفل للقيام بالعكس ، أو غير ذلك حق و اليسار.

    يمكننا أيضًا إنشاء تدرج قطري باستخدام درجة زاوية كموقف انطلاق التدرج. هنا مثال:

     div background-image: linear-gradient (45deg، # FF5A00، # FFAE00)؛  

    سيقوم المقتطف أعلاه بإنشاء التدرج اللوني التالي:

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

    والقيمة التالية هي اللون الثاني مزيج. يعمل مثل القيمة السابقة ، فقط إذا كان آخر لون مطبق ، ولم نحدد وقف الموقف, قيمة 100٪ سوف تؤخذ على النحو الافتراضي. الآن ، دعونا نلقي نظرة على المثال أدناه:

     div background-image: التدرج الخطي (أعلى ، # FF5A00 0٪ ، # FFAE00 100٪) ؛  

    سيُنشئ المقتطف أعلاه تدرجًا مثل ما رأيناه سابقًا (لا يوجد فرق) ولكن الآن نحدد موضع إيقاف اللون ؛

    الآن دعنا نغير توقف اللون, وهذه المرة سوف نحدد 50٪ للون الأول و 51٪ للون الثاني ، ودعونا نرى كيف اتضح ؛

     div background-image: التدرج الخطي (أعلى ، # FF5A00 50٪ ، # FFAE00 51٪) ؛  

    شفافية

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

     div background-image: التدرج الخطي (أعلى ، rgba (255،90،0،0.2) ، rgb (255،174،0،0.2)) ؛  

    سيؤدي المقتطف أعلاه إلى خفض كثافة اللون بمقدار 20٪, وسوف يتحول التدرج مثل هذا:

    ألوان متعددة

    إذا كنت ترغب في إضافة المزيد من الألوان ، ما عليك سوى إضافة الألوان الموجودة بجانب أخرى باستخدام محدد فاصلة ، ودع المتصفح يحدد كل موضع توقف للألوان.

     div background-image: التدرج الخطي (أعلى ، أحمر ، برتقالي ، أصفر ، أخضر ، أزرق ، نيلي ، بنفسجي) ؛  

    سيقوم المقتطف أعلاه بإنشاء قوس قزح التالي.

    التوافق المتصفح

    لسوء الحظ ، في وقت كتابة هذا التقرير ، لم تدعم جميع المتصفحات الحالية بناء الجملة القياسي. ما زالوا بحاجة إلى بادئة البائع (-بكت-, -MOZ-, -الآنسة- و -س-). لذلك ، يبدو بناء الجملة الكامل هكذا:

     div background-image: -webkit-linear-gradient (top، # FF5A00 0٪، # FFAE00 100٪)؛ خلفية الصورة: - التدرج اللوني الخطي (أعلى ، # FF5A00 0٪ ، # FFAE00 100٪) ؛ خلفية الصورة: -ms-linear-gradient (أعلى ، # FF5A00 0٪ ، # FFAE00 100٪) ؛ خلفية الصورة: -o-linear-gradient (أعلى ، # FF5A00 0٪ ، # FFAE00 100٪) ؛ صورة الخلفية: التدرج الخطي (أعلى ، # FF5A00 0٪ ، # FFAE00 100٪) ؛  

    من ناحية أخرى ، فإن Internet Explorer ، وتحديداً الإصدار 9 والأقل ، بعيد عن المعيار. التدرج في IE9 وتعلن أدناه مع منقي, لذلك إذا أردنا إضافة التدرج اللوني على تلك المتصفحات ، يتعين علينا كتابة شيء مثل هذا ؛

     div filter: progid: DXImageTransform.Microsoft.gradient (startColorstr = # FF5A00، endColorstr = # FFAE00)؛  

    ال منقي له حدوده: أولاً ، لا يسمح بإضافة أكثر من ثلاثة ألوان ، وإنشاء تأثير الشفافية أيضًا أمر صعب بعض الشيء - إنه لا يسمح رغبا, لكن IE منقي الاستخدامات #ARGB.

     div filter: progid: DXImageTransform.Microsoft.gradient (startColorstr = # 33FF5A00، endColorstr = # 33FFAE00)؛  

    إليك أداة لمساعدتك في التحويل رغبا إلى #ARGB.

    • عرض
    • تحميل المصدر

    كتابة بناء الجملة أسرع

    كما ترون أعلاه ، من أجل الحفاظ على توافق التدرج اللوني عبر المتصفحات ، نحتاج إلى إضافة خمسة أسطر أخرى من الرموز غير فعالة.

    هناك العديد من الطرق التي يمكننا القيام بها لتبسيط المهمة ؛ مثل استخدام Prefix-free أو Prefixr أو LESS أو Sass للمساعدة في ترجمة الرموز ، ولكن قبل كل شيء ، نوصي باستخدام هذه الأداة ، ColorZilla Gradient. ستنشئ هذه الأداة ببساطة جميع الرموز اللازمة ليعمل التدرجات في جميع المتصفحات.

    الكلمات الأخيرة

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

    لا تزال هناك أشياء كثيرة نخطط لاستكشافها التدرجات CSS3 في مشاركاتنا المستقبلية ، لذلك لا تنزعج من موقع Hongkiat.com. أخيرًا ، شكرًا لك على قراءة هذا المنشور ، نأمل أن تستمتع به.

    قراءة متعمقة

    • رصاصة برهان عبر متصفح خلفيات RGBA - ليا Verou
    • CSS3 Image - W3.org
    • متى يمكنني استخدام التدرجات CSS3 - CanIUse.com