stud_muffler 0 Опубликовано: 6 мая 2008 Рассказать Опубликовано: 6 мая 2008 (изменено) Сделал себе шаблон (ДЛЕ 7.0) для сайта на css. Вроде все нормально, но есть небольшой косяк, который я не знаю как исправить. Вот скрины Мой шаблон с косяком и дефолтный без косяка Насколько я понимаю: разница в определении абсолютной позиции. Как это можно поправить? ПС: Если я копирую дефолтный шаб вместо моего то косяк остаётся. Изменено 6 мая 2008 пользователем stud_muffler Цитата Ссылка на сообщение Поделиться на других сайтах
lifestar 18 Опубликовано: 6 мая 2008 Рассказать Опубликовано: 6 мая 2008 Если я копирую дефолтный шаб вместо моего то косяк остаётся.отсюда делаем выводы что что-то не хватает в css файле Цитата Ссылка на сообщение Поделиться на других сайтах
stud_muffler 0 Опубликовано: 6 мая 2008 Рассказать Опубликовано: 6 мая 2008 (изменено) Автор Если я копирую дефолтный шаб вместо моего то косяк остаётся.отсюда делаем выводы что что-то не хватает в css файле Дело в том, что это часть формируется в файле engine/modules/bbcode.php и там не прописаны top и left. Вопрос: как браузер их определяет? Родительский тэг у них один и тот же. Изменено 6 мая 2008 пользователем stud_muffler Цитата Ссылка на сообщение Поделиться на других сайтах
lifestar 18 Опубликовано: 6 мая 2008 Рассказать Опубликовано: 6 мая 2008 вот хтмл этих "окошечек" <iframe width="154" height="104" id="cp" src="{THEME}/bbcodes/color.html" frameborder="0" vspace="0" hspace="0" marginwidth="0" marginheight="0" scrolling="no" style="visibility:hidden; display: none; position: absolute;"></iframe> <div id="dle_emo" style="visibility:hidden; display: none; position: absolute; width:140px; height: 124px; overflow: auto; border: 1px solid #BBB; background:#E9E8F2;filter: alpha(opacity=95, enabled=1) progid:DXImageTransform.Microsoft.Shadow(color=#CACACA,direction=135,strength=3);">{$output}</div> вот JS для выбора смайлов function ins_emo() { var buttonElement = document.getElementById('b_emo'); document.getElementById(selField).focus(); if ( is_ie ) { document.getElementById(selField).focus(); ie_range_cache = document.selection.createRange(); } var iLeftPos = getOffsetLeft(buttonElement); var iTopPos = getOffsetTop(buttonElement) + (buttonElement.offsetHeight + 3); document.getElementById('dle_emo').style.left = (iLeftPos) + "px"; document.getElementById('dle_emo').style.top = (iTopPos) + "px"; if (document.getElementById('dle_emo').style.visibility == "hidden") { document.getElementById('dle_emo').style.zIndex = 99; document.getElementById('dle_emo').style.visibility = "visible"; document.getElementById('dle_emo').style.display = "block"; } else { document.getElementById('dle_emo').style.visibility = "hidden"; document.getElementById('dle_emo').style.display = "none"; ie_range_cache = null; } }; как видим, находятся координаты кнопки "смайлы" и относительно неё выводится окошко. Чисто из простой логики следует, что проблема в твоём CSS файле, смотри стили на таблицы, ведь $output - это таблица Цитата Ссылка на сообщение Поделиться на других сайтах
stud_muffler 0 Опубликовано: 6 мая 2008 Рассказать Опубликовано: 6 мая 2008 Автор Чисто из простой логики следует, что проблема в твоём CSS файле, смотри стили на таблицы, ведь $output - это таблица CSS таблицы у меня как в default table { border: 0px; border-collapse: collapse; } table td { padding: 0px; } А вот откуда добавляется разница в top? Цитата Ссылка на сообщение Поделиться на других сайтах
lifestar 18 Опубликовано: 6 мая 2008 Рассказать Опубликовано: 6 мая 2008 stud_muffler, ну попробуй в Firebug поотключать стили и методом перебора найдёшь "кривой" стиль) Цитата Ссылка на сообщение Поделиться на других сайтах
stud_muffler 0 Опубликовано: 8 мая 2008 Рассказать Опубликовано: 8 мая 2008 (изменено) Автор Короче, "проблема" заключалась в том, что один из основных дивов имел position: absolute; top: 155px; Поэтому для лечения пришлось редактировать engine/ajax/bbcodes.js, чтобы добавить/вычесть компенсацию. Изменено 8 мая 2008 пользователем stud_muffler Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.