سؤال

أود تغيير هذا:

<a href='foo'> 
    <div> Moo </div>
</a>

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

وأيضا هو "a { display:block; }"طريقة قانونية للتحايل على التحقق من الصحة؟

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

المحلول

لماذا لا تستخدم أ <سبان> بدلا من <ديف> وحدد العرض محجوب على كلا العنصرين؟

بالإضافة إلى ذلك، للإجابة على سؤالك الأخير:لا أعتقد إضافة العرض محجوب؛ إلى المرساة الخاصة بك سوف يجعلها تمر التحقق من الصحة.يتحقق المدقق لمعرفة ما إذا كنت تتبع قواعد (X)HTML، وليس كيفية تقديم الصفحة للمستخدم.

نصائح أخرى

وأنت قد ترغب في النظر في وضع div خارج a إذا كان فقط لأغراض العرض، إلا أنه من المهم أن الحدود الخارجي يكون للنقر. إما هذا:

<div class="dbl_border_links"><a href="blah">Blah text</a></div>

وأو هذا:

<a class="dbl_border_links" href="blah"><span>Blah text</span></a>

وستعمل ويمكنك استخدام شيء من هذا القبيل:

<style>
  .dbl_border_links, .dbl_border_links>* {
    display: block;
    border: 1px solid;
    padding: 1px;
  }
  .dbl_border_links {
    border-color: red;
  }
  .dbl_border_links > * {
    border-color: blue;
  }
</style>

وتحديد الأساليب. شخصيا كنت اذهب مع div تحتوي على a لكن يعمل إما النهج.

وأنا أعتبر عادة علامة <a > أن تكون حالة خاصة لهذا الغرض. يجب عليك أن تكون قادرة على تطبيق ذلك للتو عن anything- أنه بعد نوع من بيت القصيد من النص التشعبي (<tr > يتبادر إلى الذهن مثال جيد). ولكن إذا كان لديك لتمرير المصادقة في مكان ما أفهم.

ويمكن استخدام معالج onclick جافا سكريبت لشعبة، والقضاء على مرساة تماما؟

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

http://webdesign.about.com/od/advancedcss/a/outline_style.htm

من المسلم به أن هذا لن يعمل إلا في المتصفحات الحديثة ولكن يجب أن يتراجع بشكل جيد لأن المخطط التفصيلي لا يشغل أي مساحة في الصفحة.إذا كانت محتويات الرابط عبارة عن صورة، فيمكنك ببساطة إعطاء <a> مساحة صغيرة من الحشو ولون الخلفية بالإضافة إلى حد عادي (بلون آخر) لإنشاء انطباع بحد مزدوج.أو أعط الصورة حدودًا خاصة بها.بالطبع يمكنك أيضًا القيام بشيء ما على غرار فكرتك الأصلية، من خلال دمج HTML الخاص بك في الاتجاه المعاكس، وتعيين حد مختلف لكل عنصر.أو يمكنك استخدام عنصر مضمّن داخل الرابط (مثل <span> أو <em> أو شيء من هذا القبيل) والذي قمت أيضًا بتعيينه لعرضه:block;(نعم، هذا صحيح أيضًا!).ترميز سعيد!

إذا فهمت نواياك بشكل صحيح، فيجب عليك، كما ذكرنا سابقًا، وضع div خارج نقطة الارتساء، وللحصول على نفس العرض التقديمي، قم بإنشاء نقطة الارتساء width:100%;height:100%.قد تختلف المسافة المقطوعة عبر المتصفح.يمكنك أيضًا تفريغ div تمامًا وإعطاء المرساة display:block;

ما الذي تحاول فعله بالضبط؟

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