Задать вопрос

Как закрыть модальное окно средствами css?

Есть модальное окно. Закрывается оно при нажатии на "крестик", как сделать, чтобы оно скрывалось при нажатии вне формы?

Вот код формы:
<aside id="price" class="modal">
		<div>
		  <section class="container">
			<div class="login">
			  <h1>Нашли товар дешевле?<br>Напишите нам ссылку и мы<br>предложим вам лучшую цену</h1>
			  <form method="post" action="../../forms/send.php">
				<p><input type="text" name="name" value="" placeholder="Ваше Имя" required /></p>
				<p><input type="text" name="phone" value="" placeholder="Ваш Телефон" required /></p>
				<textarea name="quest" placeholder="Ваш комментарий" rows="10" cols="150" required ></textarea>
				<p id="knopka" class="submit"><input type="submit" name="subscribe" value="Отправить!"></p>
			  </form>
			</div>
		  </section>
			<a href="#close" title="Закрыть">Закрыть</a>
		</div>
	</aside>


А вот css данной формы:
.container {
  margin:10px auto;
}

.login {
  position: relative;
  margin: 0 auto;
  padding: 20px 20px 20px 20px;
  width: 310px;
  background: white;
  border-radius: 3px;
  -webkit-box-shadow: 0 0 200px rgba(255, 255, 255, 0.5), 0 1px 2px rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 200px rgba(255, 255, 255, 0.5), 0 1px 2px rgba(0, 0, 0, 0.3);
}
.login:before {
  content: '';
  position: absolute;
  top: -8px;
  right: -8px;
  bottom: -8px;
  left: -8px;
  z-index: -1;
  background: rgba(0, 0, 0, 0.08);
  border-radius: 4px;
}
.login h1 {
  margin: -20px -20px 21px;
  line-height: 22px;
  font-size: 15px;
  font-weight: bold;
  color: #555;
  text-align: center;
  text-shadow: 0 1px white;
  background: #f3f3f3;
  border-bottom: 1px solid #cfcfcf;
  border-radius: 3px 3px 0 0;
  background-image: -webkit-linear-gradient(top, whiteffd, #eef2f5);
  background-image: -moz-linear-gradient(top, whiteffd, #eef2f5);
  background-image: -o-linear-gradient(top, whiteffd, #eef2f5);
  background-image: linear-gradient(to bottom, whiteffd, #eef2f5);
  -webkit-box-shadow: 0 1px whitesmoke;
  box-shadow: 0 1px whitesmoke;
}
.login p {
  margin: 20px 0 0;
}
.login p:first-child {
  margin-top: 0;
}
.login input[type=text], .login input[type=password] {
  width: 278px;
}
.login p.remember_me {
  float: left;
  line-height: 31px;
}
.login p.remember_me label {
  font-size: 12px;
  color: #777;
  cursor: pointer;
}
.login p.remember_me input {
  position: relative;
  bottom: 1px;
  margin-right: 4px;
  vertical-align: middle;
}
.login p.submit {
  text-align: right;
}

.login-help {
  margin: 20px 0;
  font-size: 11px;
  color: white;
  text-align: center;
  text-shadow: 0 1px #2a85a1;
}
.login-help a {
  color: #cce7fa;
  text-decoration: none;
}
.login-help a:hover {
  text-decoration: underline;
}

:-moz-placeholder {
  color: #c9c9c9 !important;
  font-size: 13px;
}

::-webkit-input-placeholder {
  color: #ccc;
  font-size: 13px;
}

input {
  font-family: 'Lucida Grande', Tahoma, Verdana, sans-serif;
  font-size: 14px;
}

input[type=text], input[type=password],  textarea  {
  margin: 5px;
  padding: 0 10px;
  width: 200px;
  height: 34px;
  color: #404040;
  background: white;
  border: 1px solid;
  border-color: #c4c4c4 #d1d1d1 #d4d4d4;
  border-radius: 2px;
  outline: 5px solid #eff4f7;
  -moz-outline-radius: 3px;
  -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.12);
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.12);
}
input[type=text]:focus, input[type=password]:focus,  textarea:focus  {
  border-color: #7dc9e2;
  outline-color: #dceefc;
  outline-offset: 0;
}

textarea {
	margin-top: 22px;
	padding-top: 10px;
  color: #404040;
  font-family: 'Lucida Grande', Tahoma, Verdana, sans-serif;
  font-size: 14px;
  width: 278px !important;
}

#knopka input[type=submit] {
  padding: 0 18px;
  height: 29px;
  font-size: 12px;
  font-weight: bold;
  color: #527881;
  text-shadow: 0 1px #e3f1f1;
  background: #cde5ef;
  border: 1px solid;
  border-color: #b4ccce #b3c0c8 #9eb9c2;
  border-radius: 16px;
  outline: 0;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  background-image: -webkit-linear-gradient(top, #edf5f8, #cde5ef);
  background-image: -moz-linear-gradient(top, #edf5f8, #cde5ef);
  background-image: -o-linear-gradient(top, #edf5f8, #cde5ef);
  background-image: linear-gradient(to bottom, #edf5f8, #cde5ef);
  -webkit-box-shadow: inset 0 1px white, 0 1px 2px rgba(0, 0, 0, 0.15);
  box-shadow: inset 0 1px white, 0 1px 2px rgba(0, 0, 0, 0.15);
}
#knopka input[type=submit]:active {
  background: #cde5ef;
  border-color: #9eb9c2 #b3c0c8 #b4ccce;
  -webkit-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.2);
}

.lt-ie9 input[type=text], .lt-ie9 input[type=password] {
  line-height: 34px;
}
  • Вопрос задан
  • 7616 просмотров
Подписаться 7 Оценить 1 комментарий
Решения вопроса 1
SolidlSnake
@SolidlSnake
Ваш дружелюбный сосед
Все правильно говорят, окно скорее всего закрывается при помощи JS.
Даже если бы это был чистый CSS - свойств для скрытия, в стиле что вы кинули, нет.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
iiil
@iiil
Инженер и вэб-дизайнер, рисую.
Очень много хотелок ) и окно на css, и закрыть на css по клику мимо окна. Скоро будем через css к серверу обращаться.
По мне так не мудрили бы, сделайте на js - это будет кроссбраузерно, это будет актуально куда дольше, чем Ваш сайт.
Ответ написан
Скорее всего сейчас у вас это работает через javascript, а именно по нажатию на <a href="#close" title="Закрыть">Закрыть</a> вызывается обработчик, который и закрывает это окно. Вам нужно просто повесить такой же обработчик на ту область, по клику на которую, вы хотите закрывать модальное окно
Ответ написан
svistiboshka
@svistiboshka
живые веб интерфейсы
gogle.com -> "css modal window" -> drublic.github.io/css-modal
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы