سؤال

لدي بعض البيانات الجذابة مع بعض الوظائف "عرض التفاصيل" التي تطلق إجراء مكالمة AJAX لإلحاق عدد قليل من العناصر الجديدة على DOM (عادة ما قمت بإدراج TR آخر فقط بعد الصف المحدد أو Innerhtml أو إلحاق داخل TD مع Colspan.

سؤالي هو هذا، في IE6 / 7 أعمدة بلدي فليكس. حاليا ليس لدي عرض "ثابت" لكل عمود وأراد تجنب ذلك إن أمكن.

أي اقتراحات لتجنب هذا "المرن"؟

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

المحلول

هذه الخدعة هنا تستخدم الباطنية إلى حد ما table-layout:fixed القاعدة

استخدامه مثل هذا:

table {table-layout:fixed}

يجب عليك أيضا تحديد عرض عمود صريح ل <td>س.

ال table-layout:fixed تقول القاعدة "تعتمد عرض الخلايا من هذا الجدول على ما أقوله، وليس على المحتوى الفعلي في الخلايا". هذا مفيد بشكل طبيعي لأن المستعرض يمكن أن يبدأ في عرض الجدول بعد استلامه الأول <tr>. وبعد خلاف ذلك، يتعين على المتصفح تلقي الجدول بأكمله قبل أن يحاسب عرض الأعمدة. ومع ذلك، فهو مفيد أيضا في قضيتك للحفاظ على عرض الأعمدة المطلقة.

نصائح أخرى

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

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

إذا كنت تتحدث عن أعمدة تغيير حجم أنفسهم لأنك لم تعلن عرضا ثابتا عبر فئة أو نمط أو سمة - فسيتم تغيير حجم الأعمدة على أساس محتواها.

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