Сегодня только начал подбирать плеер для одного своих сайтов, а тут такой кладезь информации открылся. Спасибо огромное. Может еще подобный обзор сделать для аудио-плееров?
На самом деле факт лидерства Мэйла по аудитории очень показателен, в плане оценки общего интелектуального уровня развития интернет-пользователей. Причем нельзя сказать, что Яндекс работает на целевую аудиторию каких-то мега-интелектуалов, нет, в этом смысле он обладает вполне обычными сервисами для обычных людей. В то же время содержание контента в сервисах Мэйла - преимущественно какая-то полная клоака. И факт, что при подобном содержании, Мэил оказался в лидерах говорит только о том, что в нашей стране действительно серьезные проблемы. Деградируем-с.
Относиться к этому можно двояко: с одной стороны - да, уголовщина, а с другой - развод настолько глуп, что похож на чью-то неудачную шутку.
Ну и в отличии от гопников в переулке прямой и объективной угрозы здесь не видно. Во всяком случае у меня текст вызвал улыбку. Спасибо :)
На третьей снизу фотографии (кабинеты, где делают поиск. Уже около девяти вечера, а разработчики все улыбаются), человек слева - Игорь Сысоев, автор знаменитого nginx`а.
CSS-фреймворк вообще (ИМХО) звучит по меньшей мере забавно. Думается что для начала работы достаточно ластика и каких-то базовых общих классов. Все остальное рисуется под конкретный проект. Причем без особых трудностей, довольно быстро и прозрачно (т.е. без лишнего мусора). Следуя тенденции жду следующим XHTML фреймворк :-)
Ушли от табличной верстке к семантической верстке блоками для того, чтобы от них перейти затем к верстке списками. А результат того вообще стоит? Уж лучше тогда таблицы, во всяком случае код получается прозрачнее и проще в сопровождении.
Для того, чтобы описания стандартов были максимально полны и понятны разработчикам браузеров и сайтов, неоходимо не только читать документацию, но и иметь эффективную обратную связь с людьми, которые эти самые стандарты определяют. Эта обратная связь как минимум будет являться серезным мотиватором для переработки и перевода документации в язык, понятный людям. В противном случае неточная или даже ошибочная трактовка тонких мест просто неизбежна. Да, это огромный труд, требующий большой отдачи, но только этот путь является единственно верным и сулит в перспективе создание действительно валидных програмных продуктов.
Если у нас будет четкое, ясное и согласованное описание стандартов, то и решение проблем совестимости будет лишь вопросом времени. Новые продукты будут созаваться валидными, старые же постепенно отмирать. Спустя какое-то время режим совместимости с ie7, ie6, ie5 (продолжите сами) будет уже не актуальным и будет ликвидирован.
Задача эта не из области фантастики. Все реализуемо, было бы желание и голова на плечах.
Сорри, не нашел описание тегов для кода. Страница помощи выдает 500 ошибку, поэтому пишу текстом:
Небольшое усовершенствование:
function f_onload() {
for(i=0;i<arr_onload.length;i++) {
if (typeof(arr_onload[i]) == 'function') {arr_onload[i].apply(); }
else { eval(arr_onload[i] + '();'); };
}
}
тогда добавление небольших функций в обработчик можно будет делать одной строкой, что ИМХО нагляднее, удобнее и короче:
arr_onload[arr_onload.length] = function() {obj = document.getElementById('bar').innerHTML = 'Foo'};
Ну и в отличии от гопников в переулке прямой и объективной угрозы здесь не видно. Во всяком случае у меня текст вызвал улыбку. Спасибо :)
Результаты гугла Второй результат ведет на данный топик :)
Если у нас будет четкое, ясное и согласованное описание стандартов, то и решение проблем совестимости будет лишь вопросом времени. Новые продукты будут созаваться валидными, старые же постепенно отмирать. Спустя какое-то время режим совместимости с ie7, ie6, ie5 (продолжите сами) будет уже не актуальным и будет ликвидирован.
Задача эта не из области фантастики. Все реализуемо, было бы желание и голова на плечах.
Небольшое усовершенствование:
function f_onload() {
for(i=0;i<arr_onload.length;i++) {
if (typeof(arr_onload[i]) == 'function') {arr_onload[i].apply(); }
else { eval(arr_onload[i] + '();'); };
}
}
тогда добавление небольших функций в обработчик можно будет делать одной строкой, что ИМХО нагляднее, удобнее и короче:
arr_onload[arr_onload.length] = function() {obj = document.getElementById('bar').innerHTML = 'Foo'};