2008 20 июня 2008

Белый ошибка пространства в линии / Список товаров (ли) в IE6

Если вы когда-либо сделали (или на один) Вертикальное меню с помощью списка (Li)-теги и CSS, вы можете столкнуться, это еще одна ошибка в Internet Explorer, где IE 6 вставляет эти зазоры между элементами списка, которые содержат элементы на уровне блоков, т.е. если есть пробелы между элементами списка в разметке. Спасибо, но нет, спасибо, версия IE 7 кажется свободным от этой ошибке.
Если, как я, и многие другие, вы принадлежите к этой группе нарушенного разработчиков, которые до сих пор, чтобы получить свои новые макеты, работающих в IE6 тоже, то это может оказаться полезным. Посмотрите ...

Пример разметки:

<ul id="menu">
<li> <a href="#"> Home </ A> </ LI>
<li> <a href="#"> О </ A> </ LI>
<li> <a href="#"> услуги </ a> </ LI>
<li> <a href="#"> Портфель </ A> </ LI>
<li> <a href="#"> Справка </ A> </ LI>
<li> <a href="#"> Связаться с нами </ A> </ LI>
</ UL>

Вы можете создать несколько CSS, похожих друг ниже, transfrom над разметкой в ​​вертикальное меню ....

Пример CSS ...
# {Меню
маржа: 0; обивка: 0; фон: # FF9900;
Список стиле типа: нет, ширина: 150px;
}
# {Меню ли маржа: 0; обивка: 0;}
# {Меню Дисплей: блок;
цвет: # 555555;
текст-отделка: нет;
обивка: 0 15px;
высота строки: 2,5; нижней границы: 1px твердых # FFF;
}

Результат Вы увидите ...
нулю

Решение для этой ошибке ... (изменение / добавить CSS, выделенные жирным курсивом)

# {Меню
маржа: 0; обивка: 0; фон: # FF9900; Список стиле типа: нет, ширина: 150px;
float: left; / * это содержит плавающих элементов списка * /
}
# {Ли меню
маржа: 0; обивка: 0;
float: left; / * Эта исправления * /
Ширина: 100% / * пробелы ошибка в IE6 * /
}
# {Меню
Дисплей: блок; цвет: # 555555;
текст-отделка: нет;
обивка: 0 15px;
высота строки: 2,5; нижней границы: 1px твердых # FFF;
}

Если приведенные выше оленья кожа решение похоже на работу (по причинам, известным только в IE6) ... попробовать этот метод, а не

Просто добавьте эту дополнительную IE6 только стили разметки ...

<! - [Если IE 7 л>
<style type="text/css">
# Меню Ли {Дисплей: встроенный блок;}
# Меню Ли {Дисплей: блок;}
</ Стиль>
<[ENDIF] ->


2008 6 июня 2008

Рекомендации: Держать числа элементов DOM малого

Более DOM элементов на странице, он делает медленный, медленнее DOM доступ в JavaScript. Большое количество элементов DOM может быть вызвано плохой дизайн макета. Например, вложенные таблицы можно было бы использовать для целей компоновки. Используйте любой HTML тегов где имеет смысл семантически. Для Например, использование DONOT столы для макетов, но DONOT стесняйтесь использовать их там, где у вас есть для отображения табличных данных, и, следовательно, будет использоваться сокращение DOM элементов, в сравнении с аналогичным структура создается с использованием DIVs только ..

Чтобы проверить количество элементов DOM в HTML странице, просто введите в консоли Firebug в: document.getElementsByTagName('*').length

Существует не набор стандартных, сколько DOM элементов слишком много. Проверка других подобных страниц, которые имеют хорошие markup.Eg. Страница Yahoo! Главная довольно занятой страницы и еще до 700 элементов (HTML-теги).


2008 2 июня 2008

Рекомендации: Использование AJAX

Используйте для GET-запросов AJAX

Было установлено, что при использовании XMLHttpRequest, POST реализована в браузерах два этапа: отправка заголовка, а затем передачи данных. Поэтому лучше использовать GET, который принимает только один TCP-пакет для отправки (если у вас есть много печенья). Максимальная длина URL в IE, 2K, так что если вы пришлете больше, чем 2K данные, которые вы не сможете использовать GET.
Интересно влияние стороной является то, что на самом деле POST без размещения любых данных, ведет себя как GET. ПОЛУЧИТЬ предназначена для получения информации, так что имеет смысл (семантически), чтобы использовать получаете, когда вы только запрашивает данные, в отличие от передачи данных будут храниться на стороне сервера.

Избегайте синхронные вызовы AJAX

При создании «Аякс» запросы, вы можете выбрать либо асинхронный или режим синхронизации. Асинхронный режим запускает запрос в фоновом режиме во время других мероприятий браузер может продолжить обработку. Синхронизация режим будет ждать запрос, чтобы вернуться, прежде чем продолжить.
Запросы, в режиме синхронизации следует избегать. Эти запросы заставит браузер запереть для пользователя, пока запрос не возвращает. В случаях, когда сервер занят и ответ занимает некоторое время, в браузере пользователя (и, возможно, OS) не позволит ничего сделать. В случаях, когда ответ никогда не получил должным образом, браузер может продолжать блокирование до запроса истекло.
Если вы думаете, что ваша ситуация требует режим синхронизации, то, скорее всего, время переосмыслить дизайн. Очень немногие (если таковые имеются) ситуациях на самом деле требуют Ajax запросов в режим синхронизации.


NDK дома | Выражая IT | Выражая неба | Выражая Penmenship | Выражая трепет | выразить себя