Поиск: кнопку на картинку
Прислано: ReVizer
пн, 05/11/2007 - 20:13
Создаю тему с нуля. Застрял на search_box.
Очень хочется сделать так, как в прикрепленом наброске.
Но для этого надо кнопку "поиск" заменить на кнопку-картинку. Желательно сделать на уровне темы.
Есть предложения?
| Прикрепленный файл | Размер |
|---|---|
| search_box_nobuttons.png | 7.35 кб |
- ReVizer's blog
- Для комментирования войдите или зарегистрируйтесь
Restyler поделись информацией :)
http://russianwebstudio.com/troy/drupal_ru2_thumb.jpg
- Для комментирования войдите или зарегистрируйтесь
А может посмотрите как это сделано в теме aqua-soft (http://drupal.org/project/aquasoft) ?
там можно включать именно полностью измененную кнопку+поле поиска.

- Для комментирования войдите или зарегистрируйтесь
Так верстал тему как я понял PVasili, у него и спрашивай.
- Для комментирования войдите или зарегистрируйтесь
>> А может посмотрите как это сделано в теме aqua-soft
Спасибо. Всё стало понятно
- Для комментирования войдите или зарегистрируйтесь
Хе, хе, хе.
А в теме "aqua-soft" оказывается поиск-то не работает. :)
Так что вопрос ещё в силе.
- Для комментирования войдите или зарегистрируйтесь
поищите в инете, это точно описывалось, просто прописываются стили (прописывается картинка). Точно также, как мы можем поставить картинку на любую кнопку
- Для комментирования войдите или зарегистрируйтесь
это обычный бекграунд, положением райт, чо сложного )
у меня например у поля id=edit-search-block-form-keys
#edit-search-block-form-keys {
background: url(images/searchico.gif) no-repeat center right;
}
как-то так )
- Для комментирования войдите или зарегистрируйтесь
>> это обычный бекграунд, положением райт, чо сложного )
Это то я умею. А как надпись "поиск" убрать?
- Для комментирования войдите или зарегистрируйтесь
Это то я умею. А как надпись "поиск" убрать?
В css стиле прописать для кнопки
color: transparent;
Например
#block-search-0 input[type="submit"] {
-moz-appearance: button;
-moz-binding: none;
-moz-box-sizing: border-box;
-moz-user-select: none;
background: url("images/searchbutton.png") no-repeat scroll 0 0 transparent;
border: medium none;
cursor: default;
font: -moz-button;
height: 37px;
opacity: 1;
text-align: center;
text-shadow: none;
white-space: pre;
width: 36px;
color: transparent;
}
- Для комментирования войдите или зарегистрируйтесь
Правда я не заметил что И в опере и в Ие7 видно надпись. Рою дальше...
- Для комментирования войдите или зарегистрируйтесь
Есть Віход, может не очень красивый
Прописать в стиль кнопки
text-indent:-150px;
Например
- Для комментирования войдите или зарегистрируйтесь
Также в файлике search.module
найти строку
$form['submit'] = array('#type' => 'submit', '#value' => t('Search'));
и убрать слово Search
$form['submit'] = array('#type' => 'submit', '#value' => t(''));
но тогда при следующем обновлении системы - могет перезаписать файлик.
и снова Search привет.
так что ident: -9999px; помогает
- Для комментирования войдите или зарегистрируйтесь
Если кнопка одна, то балуюсь препроцессингом.
Если кнопок две и больше в одной форме, то будучи переделанными к картинки в ИЕ будет работать только одна дефолтная, поэтому тут решение только в css.
что-то похожее на это:
#edit-update{
text-indent:-200px;
border:0;
width:98px;
height:25px;
cursor:pointer;
margin:0;
padding:0;
font-size:0;
display:block;
line-height:0;
background:url(./images/btn_cart_update.gif) no-repeat;
}Работает везде. Из минусов только то, что кнопка превращается в блочный элемент.
Ну и нужно следить, что-бы text-indent был минимум в 2 раза больше ширины кнопки.
- Для комментирования войдите или зарегистрируйтесь
Нашел очень простое решение:
В каталоге темы создаем файл search_theme_form.tpl.php
туда записываем:
<div id="search" class="container-inline"> <?php print str_replace('type="submit"','type="hidden"',$search_form);?> </div>
кнопка пропадает раз и навсегда :)
- Для комментирования войдите или зарегистрируйтесь
Также в файлике search.module
найти строку
$form['submit'] = array('#type' => 'submit', '#value' => t('Search'));
и убрать слово Search
$form['submit'] = array('#type' => 'submit', '#value' => t(''));
но тогда при следующем обновлении системы - могет перезаписать файлик.
и снова Search привет.
сделал так, поставил на search.module "только чтение" думаю будет норм...
Нашел очень простое решение:
В каталоге темы создаем файл search_theme_form.tpl.php
туда записываем:
<?php print str_replace('type="submit"','type="hidden"',$search_form);?>
кнопка пропадает раз и навсегда :)
попробовал этот вариант, но так и не понял как сделать тоже самое, но для надписи "поиск" а не для кнопки в целом...
может кто подскажет какую строку нужно вписать в search_theme_form.tpl.php
- Для комментирования войдите или зарегистрируйтесь








Комментарии