الحد الأدنى للقيمة السلبية لمسافة بادئة للنص

StackOverflow https://stackoverflow.com//questions/12669309

  •  12-12-2019
  •  | 
  •  

سؤال

ما هو الحد الأدنى المسموح به القيمة السلبية ل text-indent ملكية؟

كنت أستخدم قيمة ضخمة بشكل غريب في موقعي (شيء من هذا القبيل text-indent: -99999999px)، وتوقف عن العمل مع آخر تحديث لمتصفح Google Chrome.لا يزال IE يعمل بشكل جيد، ولكن قد أحتاج إلى إزالة بعض الـ 9 من هناك حتى يعمل مع Chrome مرة أخرى.

تنصل:نعم، هذه القيمة مذعورة بعض الشيء، لقد استخدمتها من أجل المتعة ونسيتها تمامًا حتى ظهر النص على الشاشة اليوم.ولكن يقترح عادة text-indent: -9999px قد تفشل بسهولة في مرحلة ما في المستقبل البعيد (ليس كذلك)؟

هل كانت مفيدة؟

المحلول

القيمة الآمنة هي من المحتمل -32768px, ، ولكن هذا ليس جزءًا من المواصفات ولكنه عبارة عن ملاحظة لقيود قديمة خاصة بالتنفيذ (قد تكون قديمة).

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

.a {text-indent: -999px;}
.b {text-indent: -99999999px;}
.c {text-indent: medium potato;}

المثال الأول، سيتم تحليله بشكل صحيح؛الخيار الأخير غير صالح وسيتم تجاهله (نظرًا لأن حبة البطاطس المتوسطة ليست حاليًا جزءًا من مواصفات w3c CSS)؛لكن الوسط سيكون ملتويًا إذا حدث ذلك تجاوز (ليس "ملائمًا" للذاكرة كما خصصها المتصفح).لقد قمت بتجميع كمان وهذه هي text-indent القيم التي "تختنق" المتصفحات عندها وتتحول إلى الصفر:

#On OSX 10.8 Lion 64bit:
Safari 6       -2^31
Chrome 22      -2^26  #your original -99999999px would have failed here
Firefox 14     -2^70
Opera 12       -2^70

#On Win Server 2008 64bit:
Firefox 13     -2^70
Chrome 21      -2^70
IE 9           -2^70

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

أتذكر أول رؤية أ عملي الإشارة إلى هذا القيد في مقال عن تصميم الأعمدة الزائفة ^ يقترح أن يكون القيد المحافظ هو عدد صحيح موقّع 16 بت (من -32768 إلى +32767) - والذي سينطبق على ليس فقط المسافات البادئة للنص ولكن قيم الطول الأخرى.لست على علم بمدى اتساق هذه القيمة عبر المتصفحات المختلفة وإصداراتها، ولا مدى قابليتها للتطبيق على الكسور أو القيم المعبر عنها بوحدات مختلفة.

نصائح أخرى

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

لدي مشكلات في ipad safari باستخدام الرقم 99999em، وتم إصلاحه بالنسبة لي بضبطه على 9999em.لذلك ربما لا يوجد حد، ولكن يجب أن يكون هناك حد لتجنب هذه الأخطاء.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top