Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > spacer и Error между строками


Автор: polosatij 6.9.2008, 01:09
обычный вопрос, но не знаю, как решить это дело в JSF, изучаю третий день smile

есть обычная форма, допустим:

Код

текст1: <input>
текст2: <input>


если юзер ввёл что-то неправильно, между текст1 и текст2 должно появится сообщение:

Код

текст1: <input>
        Error
текст2: <input>


если кто-то заметил, "Error" находится не слева, а как бы чуть сдвинутым.. это достигается простой таблицой 2*3:

вот пример, как я пытаюсь закатать 2 в rich:message сообщение:

Код

    <div style="width: 1px; height: 1px;" />
    <rich:message for="create_nof_id" showDetail="true" style="width:1px; height:1px;" />


всё было бы замечательно.. но, между строками у меня space в 8 пикселей и это портит форму и выглядет вот так вот:

Код

текст1: <input>

текст2: <input>


как убрать этот space в JSF, RichFaces, Facelets? уже как только не перепробовал... rendered="#{bean.isRendered} не предлагать, нахожу этот вариант туповатым..

заранее БОЛЬШОЕ спасиба  smile 


Автор: Kangaroo 6.9.2008, 02:14
Цитата(polosatij @  6.9.2008,  01:09 Найти цитируемый пост)
как убрать этот space в JSF, RichFaces, Facelets?

A это не проблема CSS&HTML? Стили нужные прописать нельзя?

Автор: polosatij 6.9.2008, 10:39

мне всё же кажется, что это проблема JSF. нужно как-то сказать, чтоб он render-ил элемент по Validation, если в нём есть ошибки, как пример..

нет, стили переписать не получится..  smile 

Автор: ivg 6.9.2008, 13:30
Цитата(polosatij @  6.9.2008,  13:39 Найти цитируемый пост)
нет, стили переписать не получится..

Почему? А то можно было бы попробовать: 
Код

.message_hide {
  display: none;
}
.message_show {
  display: inline;
}
Код

<rich:message for="create_nof_id" showDetail="true" styleClass="message_hide"
  errorClass="message_show" />
 Думаю мысль ясна?
ЗЫ: А <h:message... /> также пустое пространство оставляет?

Автор: polosatij 6.9.2008, 14:39


зачёт за  errorClass="message_show".. просмотрел в документации  smile 

теперь только осталось избавится от space слева..  smile 

Автор: ivg 7.9.2008, 14:17
Что за space слева? Может это маркер от <rich:message .... />. Если так, то тогда аналогично можно наверное:
Код

<rich:message for="create_nof_id" showDetail="true" styleClass="message_hide"
  errorClass="message_show" markerStyle="display:none;" />

Автор: Dwyane 8.9.2008, 22:24
Возьми и просто наложи ЦСС на свой елемент. Скорее всего, rich:message трансформируеться в span. Возможно в коде ЦСС наложен именно на спан. span { margin: 0} например.
Если только начинаешь, то скачай плагин для фаерфокса и пробуй. Он тебе покажет все стили, которые накладывает сам ричфейс. Без него будет практически невозможно быстро разбираться, особенно с фичфейсом.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)