Блог для начинающих веб разработчиков. HTML, СSS, Jquery, Drupal и другое.

→ HTML форма поиска для сайта. Создание и оформление.

Опубликовано: 11 мая 2012

Приветствую всех читателей и подписчиков heavenweb.ru. Сегодня я расскажу о том, Как сверстать стильную HTML форму поиска для сайта.

На большинстве сайтов и блогов с большим количеством разнообразной информации используются такие формы. Они позволяют посетителям найти нужную статью по ключевым словам, думаю, все их видели.

С точки зрения браузера – это простые HTML формы, с двумя элементами: текстовое поле и кнопка, которая отправляет запрос. Иногда кнопки может и не быть, тогда форма отправляется нажатием клавиши enter.

В качестве примера я взял одну из работ с сайта premiumpixels.com. Вот ссылка на сам пост. Этот бесплатный psd файл с оформлением шести видов форм выглядит, как показано на картинке ниже. Вы можете скачать и сам PSD с того сайта, так как он распространяется бесплатно.

ДемоСкачать

Мы ограничимся созданием светлой и тёмной версии, так как третья – синего цвета очень похожа на светлую.

Что у нас получится в итоге, смотрите ниже:

Итак, как я уже сказал, HTML код представляет собой форму с двумя элементами input. Для удобства оформления, каждый из них я обернул в блок div.

<form action="" method="post" id="search-block-form">
      <div class="form-item">
        <input type="text" name="" value="" maxlength="128" placeholder="Найти...">
      </div>
      <div class="form-actions">
        <input type="submit" name="op" value="Поиск" class="form-submit">
      </div>
</form>

Для всех видов оформления, этот код будет один и тот же.

Кто работал с Drupal 7, могут увидеть, что эта структура очень похожа на стандартную форму поиска в Drupal 7. Так и есть. Если вы будете встраивать это оформление в свой сайт на этой CMS, вам не понадобится что-то менять в выводе HTML (кроме placeholder, см.ниже).

Для поля ввода мы задаём атрибут placeholder. Значение этого атрибута показывается внутри поля ввода, и пропадает, когда поле получает фокус. Очень удобное свойство.

По умолчанию в разных браузерах вся эта форма поиска будет выглядеть по-разному, и везде не очень стильно. Например, её вид в Opera и Safari показан ниже:

Поэтому нам не обойтись без стилевой разметки. Рассмотрим стили для круглой светлой версии. В CSS файл нужно вставить следующий код:

#search-block-form{
	width:248px;
	height:28px;
	border-radius:15px;
	border:#c9c9c9 solid 1px;
	background:url(images/searchBg.png) left top repeat-x;
	}
.focus-active{
	border-color:#aaa !important;
	background:#fff !important;
	}
#search-block-form input{
	padding:0;
	margin:0;
	display:block;
	border:none;
	outline:none;
	background:none;
	width:100%;
	height:100%;
	}
#search-block-form .form-actions{
	width:28px;
	height:28px;
	float:left;
	background:url(images/searchIcon.png) 5px 2px no-repeat;
	}
#search-block-form .form-actions input:hover{
	cursor:pointer;
	}
#search-block-form .form-actions input{
	overflow:hidden;
	text-indent:-9999px;
	}
#search-block-form .form-item{
	width:210px;
	padding:0px 5px;
	float:right;
	height:28px;
	}
#search-block-form .form-item input{
	font:13px/16px "Trebuchet MS", Arial, Helvetica, sans-serif;
	color:#222;
	height:auto !important;
	padding:6px 0;
	}
.placeholder{color:#cbcbcb !important;}

Разберём по порядку и подробнее. Сначала мы задаём самой форме c идентификатором #search-block-form размеры, цвет рамки и скругление углов.

#search-block-form{
	width:248px;
	height:28px;
	border-radius:15px;
	border:#c9c9c9 solid 1px;
	background:url(images/searchBg.png) left top repeat-x;
	}

Все внутренние элементы не будут иметь цвета фона или границ, поэтому отменяем все стандартные свойства у обоих тегов input.

#search-block-form input{
	padding:0;
	margin:0;
	display:block;
	border:none;
	outline:none;
	background:none;
	width:100%;
	height:100%;
	}

Задавать оформление мы будет по возможности, div-ам в которые обёрнуты элементы, а не им самим.

Блок form-actions будет держаться левой стороны, а form-item – правой. У кнопки отправления формы есть текст, а нам он не нужен, поэтому убираем его следующим известным методом.

#search-block-form .form-actions input{
	overflow:hidden;
	text-indent:-9999px;
	}

Далее всё понятно, мы указываем цвета, отступы и шрифты для текста.

#search-block-form .form-item input{
	font:13px/16px "Trebuchet MS", Arial, Helvetica, sans-serif;
	color:#222;
	height:auto !important;
	padding:6px 0;
	}

Теперь рассмотрим JavaScript код.

<script src="jquery-1.7.2.min.js"></script>
<script src="jquery.placeholder.min.js"></script>
<script>
/*  Скопируйте код ниже в ваш js файл. (JavaScript). */

$(document).ready(function(e) {
	$("input[placeholder]").placeholder();
	$("#search-block-form .form-item input").focus(function(){
		$("#search-block-form").addClass("focus-active");
			})
	.blur(function(){
		$("#search-block-form").removeClass("focus-active");
	});
});

/* Конец */
</script>

Казалось бы, зачем здесь нужен JavaScript? На самом деле он добавляет несколько полезных для юзабилити вещей.

Во-первых, свойство placeholder пришло вместе с HTML5, и его поддержка в старых браузерах оставляет желать лучшего. Но есть простое решение в виде jQuery плагина jQuery-Placeholder, который обеспечит поддержку этого свойства у всех браузеров (включая даже IE6!).

Для этого подключаем сам файл и включаем эту функцию:

$("input[placeholder]").placeholder();

Если уж мы подключили jQuery, то можно сделать ещё что-нибуть. Например, пусть при получении фокуса формой, она как-то изменяется.

Для этого мы создали специальный класс focus-active. При добавлении этого класса к форме она меняет цвет фона на белый, а цвет рамки становится немного темнее. Форма станет как бы  реагировать на действия пользователя.

.focus-active{
	border-color:#aaa !important;
	background:#fff !important;
	}

Класс .placeholder оформляет текст из атрибута placeholder в старых браузерах. Этот класс возможно использовать только если мы используем тот самый jQuery плагин.

.placeholder{color:#cbcbcb !important;}

Вот и всё. Мы создали форму поиска, которую несложно интегрировать в большинство сайтов.

Другие версии не сильно отличаются, смотрите исходный код демо-страниц, там есть необходимые комментарии.

ДемоСкачать

На сегодня всё. Пишите в комментариях, о чём бы вы хотели прочесть в новых постах блога, а так же подписывайтесь на RSS и получайте информацию об обновлении heavenweb.ru первыми!

Поделиться:
Комментарии

Шикарная статья. То что искал. Как всегда нахожу нужную информацию после долгих исканий. Очень хорошо что работает без пхп. У меня есть несколько сайтов на хтмл.

пн, 2016-10-03 22:25

В остальных современных браузерах все замечательно. Я считаю, что вышеуказанные недостатки не критичны, поэтому для своего сайта я бы смело использовал форму, сверстанную по последним технологиям.

вт, 2016-11-08 01:23

Unquestionably believe that which you said. Your favorite justification seemed to

be on the net the easiest thing to be aware of. I say to you,

I definitely get annoyed while people consider worries that they plainly

don't know about. You managed to hit the nail upon the top and defined out the whole thing without

having side-effects , people could take a signal. Will probably be back to get more.

Thanks

Here is my site; hd movies

вс, 2018-09-02 10:56

А как он будет искать то, что введено? Нужно как-то добавлять самостоятельно?

Salto
пт, 2016-12-23 12:40

Oh my goodness! Incredible article dude! Thanks, However

I am encountering troubles with your RSS. I don't understand the reason why I am unable to subscribe

to it. Is there anybody else getting the same RSS problems?

Anyone who knows the answer will you kindly respond? Thanks!!

my site ... adult films

вс, 2018-09-02 11:06

Всем привет.

SvetaLek
сб, 2017-06-10 07:38

Привет всем участникам!
Нашел прикольные фотки на этом сайте: http://agentorange.ru :
http://agentorange.ru/art-foto-interesnoe/893-kartiny-sozdannye-pri-pomoschi-solnechnogo-sveta.html Картины, созданные при помощи солнечного света
http://agentorange.ru/art-foto-interesnoe/2063-video-youtube-teper-mozhno-budet-smotret-s-raznyh-rakursov.html Видео YouTube теперь можно будет смотреть с разных ракурсов
http://agentorange.ru/art-foto-interesnoe/5221-poklonnica-komiksov-prevratilas-v-devushku-pauka.html

сб, 2018-06-30 11:54

free roulette spin - play roulette for free
slot roulette american roulette
https://roulettecas.com/

чт, 2018-07-12 19:18

Heya i am for the first time here. I found this board and I find It truly useful & it helped me out much.

I hope to give something back and help others like you

aided me.

Here is my site :: adult tube

вс, 2018-09-02 11:26

Tarif Cialis France 3000 Mg Amoxicillin A Day Sisw Effects Cephalexin Dogs generic cialis from india Amoxicillin Improvement Noticed In Bowel Bacteria

пт, 2018-08-10 00:33

Приветствую Вас! Вы все еще не можете продвинуть свой сайт с места и начать зарабатывать не плохие деньги? Хочу Вам предложить свою услугу по продвижению вашего сайта или интернет-магазина в ТОП-10 выдачи поисковиков.

Подробнее узнайте по почте proxrum==@==mail.ru (удалите плиз знаки =)
Отпишите на Email письмо с темой "ПРОДВИЖЕНИЕ САЙТОВ В ПОИСКОВИКАХ" и я Вам отвечу. Стоимость продвижения в два раза ниже стоимости СЕО-фирм!

Vadimkn
ср, 2018-08-22 05:28

Acquire lower-priced medication drugs from our online remedy referral use - PharmaPills.net - and enjoy the convenience of superior service and concord of rail at when ordering from our secure online shopping system.

Our pair of dedicated professionals make every effort to make your online experience as astute and pleasant as possible. We honour ourselves in our ability to provender these services at a significantly farther down fetch than what chestnut would normally pay. All while avoiding any unseen charges or fees. PharmaPills.net under no circumstances loses glance at of our patients being people, opposed to numbers. Our gang wishes not till hell freezes over give up searching to the best dispense on medications we can make available to you.

We Help People Get Solely Medications

PharmaPills.net is fully committed to providing distinction when it comes to your prescription medications. Our patients are searching as a remedy for a trusted, online chemist's shop - including a licensed Canadian apothecary - which offers the “natural behave” at an affordable price.

We, at pharmapills.net, recall that in many cases the bring into play of accurate formula drugs at the upper-class prices may not however modernize your quality of life story, but also shield your wallet.

http://pharmapills.net/ - pharm d drugs

Accordingly, our online pharmacy guarantees that its customers not only receive blameless, unadulterated drugs, but also, that they resolution be specified any compelling chap brace which may squire their prescriptions.

We expend close heed to each and every customer, ensuring that the on the mark medication and chastise quantity is dispensed. You can rely on us in favour of any needed prescription soporific communication; in the interim we ask that you be modelled after the physician’s instructions allocated to each prescription.

You Can Rely On PharmaPills

Our trusted, Canadian Cosmopolitan Drugstore Association approved, online pharmacy, PharmaPills, realizes that unequalled health plays a perfect critical share in life. Our entire staff is dedicated to providing our customers with the pharmaceuticals they need. We advance a quick turn-around things, lewd prices, genuine medications, and the top-priority physician’s instructions suitable each prescription.

http://pharmapills.net/

Over, we have alphabetically listed full descriptions of our most time purchased recipe drugs online. Directive these drugs from us with confidence.

ср, 2018-08-29 08:17

Всем привет! прикольный у вас сайт!
Нашел хорошую базу кино: приключения лучшее смотреть онлайн бесплатно http://kinokub.net/
Здесь: фильмы онлайн 2018 фэнтези в хорошем качестве лучшее фэнтези онлайн список 2017
Тут: смотреть лучшие зарубежные драмы http://kinokub.net/drama/ список 2017
Тут: смотреть документальные фильмы онлайн в хорошем качестве http://kinokub.net/dokumentalnyy/ список 2018
Здесь: http://kinokub.net/news/2414-vyshel-pervyy-polnocennyy-treyler-ostatkov.html Вышел первый полноценный трейлер «Остатков»
Здесь: http://kinokub.net/komediya/2164-amerikanskiy-papasha-american-dad-sezon-2-2006-2007.html

ср, 2018-09-05 23:10

best price viagra order viagra online viagra online generic viagra without a doctor prescription

сб, 2018-09-15 20:48

generic tadalafil buy cialis online overnight shipping cialis professional buy cialis online cheap

пт, 2018-09-21 08:58

over the counter viagra how to buy viagra online buy cheap generic viagra viagra online prescription free

вс, 2018-09-23 11:20

how does viagra work buy viagra online cheap viagra online viagra

вт, 2018-09-25 10:56

order cialis buy generic cialis online cialis 20mg [url=http://joicialisosn.com/]tadalafil[/url]

пт, 2018-09-28 13:08

tadalafil cialis buy generic cialis online cialis 20mg generic cialis online

сб, 2018-09-29 22:40

buy viagra online at viagra online without prescription female viagra pills can you buy viagra online

вт, 2018-10-09 00:11

consolidate credit card debt 1000 payday loans bad credit loan payday loans payday lender bad credit loan 24 hour loans

вт, 2018-10-16 18:09

canada payday loans consolidate credit card payday advance student loan help

чт, 2018-10-18 23:49

loans online payday fax free payday loan no teletrack instant cash personal loan fax payday loan funds

сб, 2018-10-20 21:53

payday loans direct lender american online marketing payday loan payday direct cash advance loan

вс, 2018-10-21 18:49

Страницы

Комментировать