Jump to content

s0rr0w

User
  • Posts

    5,139
  • Joined

  • Last visited

  • Days Won

    32

Everything posted by s0rr0w

  1. http://www.w3.org/TR/CSS21/visuren.html#run-in Посмотрите на пример. И читаем вот тут http://www.w3.org/TR/html401/struct/global.html#h-7.5.5 A heading element briefly describes the topic of the section it introduces. Короткое описание темы раздела. Там дальше идет про важность размера и так далее, это старье, CSS изменил визуальный подход к тегам. Но если брать полиграфию, откуда и пришли эти заголовки, то это абсолютно нормальный подход. Краткое описание темы может быть визуально отображено как угодно, это не обязательно должен быть заголовок.
  2. Не согласен. Заголовок - это некая сущность, которая логически оглавляет некий контент, который идет далее по тексту. Как выглядит этот элемент уже не важно. Структурно все вполне адекватно получается.
  3. Дык ворд вроде бы умеет сохранять как HTML. Правда у него получается говнокод, но это можно исправить при помощи tidy.
  4. Сделайте модификации в коде. Для моего кода все просто <h3 SC="sc_move_node:move:tabSwitchBox|sc_set_menu_action:move:activateMenu:1|sc_ap ply_class_by_id:menu:1:active--allowNonDirect">Menu 1</h3> Выделенное - имя класса, который присваивается при активации пункта меню. Вставляй любое имя и получай нужный функционал без изменения кода JS IceBars, вы не выполнили полностью условия задания. 4. Все блоки в коде должны идти порционно: активатор + блок с данными + хэлп 5. Хэлп блоки могут содержать ссылки, которые будут показывать связанные хэлп-блоки из уже имеющихся. Если показан хэлп блока 1, то при нажатии на ссылку нужно показать хэлп блока 1 + хэлп блока 2.
  5. IceBars, заказчик захотел видеть табы разного цвета со своими специфическими иконками. Как решать будете?
  6. Поищите, на этом форуме уже была тема про прозрачность в 8м ИЕ
  7. Писал писал, но не уверен, что предыдущий пост ко мне относился.
  8. Поздравляю! Есть понятие стимулирование к действию. Если человеку интересно проверить свои силы - он сделает. Я прекрасно понимаю, что с первого раза вникнуть в чуждую привычному пониманию систему бывает тяжело. Я еще не видел ни одного человека, который с первого раза принял идею SC. В том, что код смешан, не вижу ничего плохого. Наоборот, отделяя код возникает другая крайность - ничего не понятно. Дебаг таких скриптов превращается в длительное и утомительное занятие. Если пройдет время, то ситуация только усугубится, потому что нужно будет разбираться в коде нескольких файлов одновременно. В js задаются ключевые классы, такие как hiddenBlock. Никаких проблем не составляет вынести название этих классов в обработчики. Обработчики ведь можно делать какие угодно. А вот насчет логики в HTML - это несоизмеримый плюс. Снова приведу пример <div cass="menuBox"><b class="menuItem"><span class="menuTitle">Menu Item 1</span></b></div> Без открытия постороннего файла вы никогда в жизни не догадаетесь, какое значение имеют данные элементы Теперь смотрим <div cass="menuBox" SC="sc_set_onclick:init_menu:activateMenuOptions:1"><b class="menuItem" SC="sc_set_onclick:init_menu:activateMenu:1|sc_activate_menu:activate:1:activationClass"><span class="menuTitle">Menu Item 1</span></b></div> Я вам могу рассказать всю логику работы данного элемена 1. menuBox является перключателем свойств опций для меню. Его обработчик, activateMenuOptions, будет установлен при возникновении события init_menu 2. menuItem будет активатором меню, его обработчик, activateMenu, будет установлен при том же событии init_menu. Этот же элемент будет реагировать на событие активации меню activate, ему будет установлен класс, который будет указывать на признак активности (activationClass). Теперь подумайте, вы узнали все про элемент, взглянув на код, или вам придется копаться еще в немаленьком JS файле, только для того, чтобы примерно понять, как это работает. Если я не хочу, чтобы элемент был активным пунктом меню, достаточно убрать с него один обработчик. Что нужно сделать, чтобы убрать обработчик с элемента в случае ненавязчивого JS? Колдовать с кодом? Да и я постоянно слышу, что можно сделать чище и интуитивнее... Но это всего лишь красивые слова. Сделайте. Сделайте, потом приходите с кодом, и мы посмотрим, чей подход позволяет тратить меньше времени на разработку и на последующие изменения в коде. P.S. в проекте, где активно используется SC, за год было написано всего пара новых обработчиков. Добейтесь повторного использования кода с другими технологиями.
  9. Не заметил что-то... Ладно, приду на работу еще раз проверю.
  10. s0rr0w

    Браузеры

    FF3. А до этого FF2, FF1... Mozilla 0.8.3.. Наиболее предсказуемый браузер из всех. А что еще нужно разработчику?
  11. position: absolute - не создает блоков в обычном потоке
  12. Нет, это уже из другой. Это древний баг, которому, наверное, с десяток лет уже. Повторяется и в 7й версии. Если div.content добавить zoom: 1, то все чудным образом вылечивается.
  13. OMG! Где вы такой логике научились? Все пошли воровать, и вы пойдете, потому что так все делают? А ничего что по закону воровать запрещено?
  14. Вопрос, зачем его убирать? Вы думаете, кто-то будет особо возмущен наличием 1-го пикселя? Все, что бы вы не пробовали с таблицей, не приведет к ожидаемому вами результату, который будет одинаковый для всех браузеров. Потому что главная ваша ошибка в том, что вы не понимаете, почему браузер так делает. Вернитесь к тому посту, где я пояснял почему это нельзя считать багом, потом скопируйте себе тот проверочный код, что я приводил, и посмотрите на результат в разных браузерах. Потом перейдите по ссылке на спецификацию, что я приводил, и посмотрите, чему равняется ширина таблицы, и как отсчитываются бордюры при border-collapse: collapse Решение - не таблица с border-collapse: collapse (это может быть таблица, которая лежит внутри дива с бордюром и фоном), или блочная верстка.
  15. Да тут что не предлагай, все равно не поможет
  16. Ссылки в тексте явно находятся в каких-то определенных контейнерах. Примените стиль только к тем ссылкам, которые лежат в этих контейнерах, а все остальные на интерфейсе останутся нормальными. Отменить из вложенного объекта стиль родительского невозможно в данной версии CSS Если забить на IE6, то можно использовать конструкцию типа a[title] { text-decoration: none }
  17. http://forum.htmlbook.ru/index.php?showtopic=12667 Борьба с "мифическим" однопиксельным смещением Да сколько можно повторять, НЕ БАГ ЭТО Это правильно, так должно быть во всех браузерах!
  18. Вот это другое дело, это уже предметный разговор, а то я не силен в ментальном анализе потока сознания... <div>aaa</div> <div style="position: relative; top: 2em;">bbb</div> <div style="position: relative; top: -1em;">ccc</div> Так? Вообще-то, вам стоит формализировать всю задачу в целом, может быть мы боремся с ветряными мельницами..
  19. Вы внимательно читали то, что я написал? Еще рез повторю, FF3.0 абсолютно корректно, с точки зрения спецификации, рендерит данную таблицу, так как он не может разделить бордюр толщиной в 1 пиксель надвое. Все остальные браузеры обрабатывают данный код НЕКОРРЕКТНО. Ваши мысли по поводу того, что по вашему мнению правильно, а что - нет, отсылайте напрямую в www.w3c.org, может они к вам и прислушаются, и изменят спецификацию, чтобы браузеры рендерили так как вам хочется, по вашей личной логике.
  20. Лично я забиваю на такое. Никому не интересно лазить по сайту с линейкой и вымерять несовпадение пикселей.
  21. Призывай Великий и Могучий Валидатор в помощь! <TITLE>Сайт</HTML>
  22. Можно ничего не писать, все уже написано. Скачайте вот отсюда файл http://forum.htmlbook.ru/index.php?act=att...=post&id=40 Подключите lib.js, stateController.js, scHandlers.js, как в примере. id для <a> можете убрать, это не обязательно, мы его в другом месте установим Добавляем к каждому тегу вот такую конструкцию SC="sc_apply_class_by_id:menu:1:active" <a href="#" SC="sc_apply_class_by_id:activate:1:active">Tab 1</a> <a href="#" SC="sc_apply_class_by_id:activate:2:active">Tab 2</a> Расшифровываю sc_apply_class_by_id - обработчик (находится в scHandlers.js) activate - имя события 1 - идентификатор таба active - имя класса, который будет присвоен при нажатии на данный таб Добавляем каждому <div class="tabContent"> Вот такую конструкцию SC="sc_show_content_by_id:menu:1 <div class="tabContent" SC="sc_show_content_by_id:activate:1">Boris</div> <div class="tabContent" SC="sc_show_content_by_id:activate:2">Vova<div> Теперь нужно оживить наши переключатели Добавим <a> onclick="activateTab( 1 ); return false;" <a href="#" onclick="activateTab( 1 ); return false;" SC="sc_apply_class_by_id:activate:1:active">Tab 1</a> <a href="#" onclick="activateTab( 2 ); return false;" SC="sc_apply_class_by_id:activate:2:active">Tab 2</a> Для нормальной работы нам необходими ID двух контейнеров - с переключалками и контейнерами <div class="tabSwitchContainer" id="tabSwitchContainer"> и <div class="tabContentContainer" id="tabContentContainer"> и добавляем js функцию var activateTab = function( id ){ try { GSC_setValAndLaunch( "activae", id, "tabSwitchContainer") // активизируем нужную переключалку таба GSC_launch ( "tabContentContainer", "activate", { propagation: "childNodes"} ); // активируем нужный контейнер. Не лезем глубже чем дети контейнера } catch ( e ) { return false } } И нужно теперь инициализировать первый пункт меню при загрузке activateTab(1); Вот что получилось всего <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html> <head> <title>SC sample</title> <script type="text/javascript" src="StateController/lib.js"></script> <script type="text/javascript" src="StateController/stateController.js"></script> <script type="text/javascript" src="StateController/scHandlers.js"></script> <style type="text/css"> .hiddenBlock { display: none } .active { font-weight: bold } </style> <script type="text/javascript"> var activateTab = function( id ){ try { GSC_setValAndLaunch( "activate", id, "tabSwitchContainer") // активизируем нужную переключалку таба GSC_launch ( "tabContentContainer", "activate", { propagation: "childNodes"} ); // активируем нужный контейнер. Не лезем глубже чем дети контейнера } catch ( e ) { return false } } </script> </head> <body> <div class="tabSwitchContainer" id="tabSwitchContainer"> <a href="#" onclick="activateTab( 1 ); return false;" SC="sc_apply_class_by_id:activate:1:active">Tab 1</a> <a href="#" onclick="activateTab( 2 ); return false;" SC="sc_apply_class_by_id:activate:2:active">Tab 2</a> </div> <div class="tabContentContainer" id="tabContentContainer"> <div class="tabContent" SC="sc_show_content_by_id:activate:1"> Boris </div> <div class="tabContent" SC="sc_show_content_by_id:activate:2"> Vova </div> </div> <script type="text/javascript"> activateTab( 1 ); </script> </body> </html> Кажется немного сложным, но этот код легко масштабировать под любые задачи. Например, каждый таб будет иметь разные цвета активации, переключателями может служить любой элемент, контейнеры можно располагать в любом месте кода (главное им отправить событие о том, что нажали на таб), и так далее.
  23. Select - системный элемент, на него может не действовать магия CSS P.S. Если сильно хочется, то можно использовать эмулятор селекта.
  24. Надеюсь, расширение файла у тебя .html ?
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy