Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.01.2018, 17:37
Новичок на форуме
Отправить личное сообщение для OggybigDoggy Посмотреть профиль Найти все сообщения от OggybigDoggy
 
Регистрация: 30.01.2018
Сообщений: 2

CSS класс добавляется в div но свойства не применяются
Добавляю класс в тег div, но свойства не применяются к элементам

вот JS
function myFunction() {
	var x = document.getElementById("myTopnav");

	if ( document.getElementById("myTopnav").classList.contains("responsive") ) {
		document.getElementById("myTopnav").classList.remove("responsive");	
	} else {
		document.getElementById("myTopnav").classList.add("responsive");
	}
}

вот CSS

* {
	margin: 0;
	padding: 0;
}

body {
	font-family: 'Raleway', sans-serif;
}

a {
	text-decoration: none;
}

li {
	text-decoration: none;
	list-style: none;
}


.logo {
	background: black;
	width: 100%;
	display: flex;
	justify-content: center; 
}

.graficlogo {
	padding: 5px;
	max-width: 100%;
	box-sizing: border-box;
}

nav {
	margin: auto;
	width: 800px;
	height: 100px;
}

.top-nav {
	background: #fff;
	font-size: 14px;
	margin-top: 40px;
}

.top-nav a {
	color: #000;
	text-align: center;
	padding: 14px 16px;
	font-style: 15px; 
									/*border-radius: 50%*/
}
									/*добавить плавность анимацииы*/
.top-nav a:hover {
	 border-bottom: 2px solid #000; /*округленный ховер border-bottom: 10px solid #000;*//*как выпуклые кнопки box-shadow: 0 2px 2px 0 black; */
}

.top-nav .icon {
	display: none;
}

@media screen and (max-width: 768px) {
	.top-nav a:not(:first-child) {
		display: none;
	}

	.top-nav a.icon {
		float: right;
		margin-top: -17px;
		display: block;
		color: black;
	}
	nav {
		width: 100%;
		height: 100px;
	}
	

}

.top-nav .responsive{
		position: relative;
	}
.top-nav .responsive a.icon{
		position: absolute;
		right: 0;
		top: 0;
	}
.top-nav .responsive a {
		display: block;
		float: none;
		text-align: left;
	}

вот HTML

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Mirralise</title>
	<link rel = "stylesheet" href = "css/style.css">
	<link href="https://fonts.googleapis.com/css?family=Raleway" rel="stylesheet">
	<script src = "js/script.js" ></script>
</head>
<body>
	<header>
		<div class="logo">
			<a href="index.html"><img class = "graficlogo" src="img/logo.png" alt="Logo"></a>
		</div>
		<nav>
			<div class="top-nav" id="myTopnav">
				<a href="index.html">HOME</a>
				<a href="projects.html">PROJECTS</a>
				<a href="blog.html">BLOG</a>
				<a href="contact.html">CONTACT</a>
				<a href="about.html">ABOUT</a>
				<a href="services.html">SERVICES</a>
				<a href="location.html">LOCATION</a>
				<a id = "menu" onclick = "myFunction()" href="#" class = "icon">&#9776</a>
			</div>
		</nav>
	</header>



</body>
</html>

сори за объем, я просто не пойму где проблема
помогите пжста

Последний раз редактировалось OggybigDoggy, 30.01.2018 в 17:40. Причина: не знал как отформатировать код
Ответить с цитированием
  #2 (permalink)  
Старый 30.01.2018, 17:49
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,791

У ClassList есть метод "toggle".
https://developer.mozilla.org/ru/doc...BE%D0%B4%D1%8B

Пробел удалите в CSS между "top-nav" и "responsive":
".top-nav.responsive"
Ответить с цитированием
  #3 (permalink)  
Старый 30.01.2018, 17:55
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

OggybigDoggy,
css пробелы уберите .top-nav здесь .responsive
Ответить с цитированием
  #4 (permalink)  
Старый 30.01.2018, 18:00
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

OggybigDoggy,
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Mirralise</title>
  <style type="text/css">
 * {
  margin: 0;
  padding: 0;
}

body {
  font-family: 'Raleway', sans-serif;
}

a {
  text-decoration: none;
}

li {
  text-decoration: none;
  list-style: none;
}


.logo {
  background: black;
  width: 100%;
  display: flex;
  justify-content: center;
}

.graficlogo {
  padding: 5px;
  max-width: 100%;
  box-sizing: border-box;
}

nav {
  margin: auto;
  width: 800px;
  height: 100px;
}

.top-nav {
  background: #fff;
  font-size: 14px;
  margin-top: 40px;
}

.top-nav a {
  color: #000;
  text-align: center;
  padding: 14px 16px;
  font-style: 15px;
                  /*border-radius: 50%*/
}
                  /*добавить плавность анимацииы*/
.top-nav a:hover {
   border-bottom: 2px solid #000; /*округленный ховер border-bottom: 10px solid #000;*//*как выпуклые кнопки box-shadow: 0 2px 2px 0 black; */
}

.top-nav .icon {
  display: none;
}

@media screen and (max-width: 768px) {
  .top-nav a:not(:first-child) {
    display: none;
  }

  .top-nav a.icon {
    float: right;
    margin-top: -17px;
    display: block;
    color: black;
  }
  nav {
    width: 100%;
    height: 100px;
  }


}

.top-nav.responsive{
    position: relative;
  }
.top-nav.responsive a.icon{
    position: absolute;
    right: 0;
    top: 0;
  }
.top-nav.responsive a {
    display: block;
    float: none;
    text-align: left;
  }

  </style>
<link href="https://fonts.googleapis.com/css?family=Raleway" rel="stylesheet">
<script>function myFunction(event) {
  event.preventDefault();
  var elem = document.getElementById("myTopnav");
  elem.classList.toggle("responsive")
}
</script>
</head>
<body>
  <header>
    <div class="logo">
      <a href="index.html"><img class = "graficlogo" src="img/logo.png" alt="Logo"></a>
    </div>
    <nav>
      <div class="top-nav" id="myTopnav">
        <a href="index.html">HOME</a>
        <a href="projects.html">PROJECTS</a>
        <a href="blog.html">BLOG</a>
        <a href="contact.html">CONTACT</a>
        <a href="about.html">ABOUT</a>
        <a href="services.html">SERVICES</a>
        <a href="location.html">LOCATION</a>
        <a id = "menu" onclick = "myFunction(event)" href="#" class = "icon">&#9776</a>
      </div>
    </nav>
  </header>



</body>
</html>
Ответить с цитированием
  #5 (permalink)  
Старый 01.02.2018, 12:03
Новичок на форуме
Отправить личное сообщение для OggybigDoggy Посмотреть профиль Найти все сообщения от OggybigDoggy
 
Регистрация: 30.01.2018
Сообщений: 2

Не думал что так быстро откликнетесь.
Спасибо за помощь в таком глупом вопросе
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как удалять свойства CSS? sysya jQuery 21 30.04.2013 16:04
Как узнать о поддержке браузером CSS свойства? estoesyo Элементы интерфейса 3 18.10.2010 22:12
Использование css свойства display для подменю Lex4e Общие вопросы Javascript 7 07.01.2010 22:02
Замена CSS класса каждого четвертого div iGusse jQuery 4 17.12.2009 23:51
Запретить свойства из CSS SunnyDay Общие вопросы Javascript 11 29.09.2008 14:30