Html меню на сайте, как лучше реализовать?

258
15 февраля 2018, 13:53

.topmenu { 
	width: 90%; 
	height: 35px; 
	background: linear-gradient(to top,#202020,#454545); 
	border-radius: 5px; 
	margin-left: 5%; 
	margin-right: 5%;  
 
} 
.a { 
	margin: 0; 
	font-family: Helvetica; 
	font-size: 22px; 
		color: #e3e3e3;3	text-align: center; 
	font-style: normal; 
	color: white; 
	text-decoration: none; 
} 
.menu2{ 
	display: inline-block; 
	padding-right: 25px;  
	padding-left: 25px; 
	padding-top: 4px; 
	padding-bottom: 5px; 
} 
.menu3{ 
	display: inline-block; 
	padding-right: 25px;  
	padding-left: 25px; 
	padding-top: 4px; 
	padding-bottom: 5px; 
} 
.menu4{ 
	display: inline-block; 
	padding-right: 25px;  
	padding-left: 25px; 
	padding-top: 4px; 
	padding-bottom: 5px; 
} 
.menu5{ 
	display: inline-block; 
	padding-right: 25px;  
	padding-left: 25px; 
	padding-top: 4px; 
	padding-bottom: 5px; 
} 
.menu6{ 
	display: inline-block; 
	padding-right: 25px;  
	padding-left: 25px; 
	padding-top: 4px; 
	padding-bottom: 5px; 
} 
.menu1{ 
	display: inline-block; 
	padding-right: 25px;  
	padding-left: 25px; 
	padding-top: 4px; 
	padding-bottom: 5px; 
} 
.menu1:hover{ 
	 transition: 0.5s; 
	background-color: #b83c2e; 
	border-radius: 5px 0 0 5px; 
} 
.menu2:hover{ 
	 transition: 0.5s; 
	background-color: #b83c2e; 
} 
 
.menu3:hover{ 
	transition: 0.5s; 
	background-color: #b83c2e; 
} 
 
.menu4:hover{ 
	 transition: 0.5s; 
	background-color: #b83c2e; 
} 
 
.menu5:hover{ 
	transition: 0.5s; 
	background-color: #b83c2e; 
} 
 
.menu6:hover{ 
	 transition: 0.5s; 
	background-color: #b83c2e; 
} 
.menu5::not(:hover){ 
	 transition: 0.5s;  
} 
.menu4::not(:hover){ 
	 transition: 0.5s;  
} 
 
.menu3::not(:hover){ 
	 transition: 0.5s; 
} 
 
.menu2::not(:hover){ 
	 transition: 0.5s;  
} 
 
.menu1::not(:hover){ 
	 transition: 0.5s;  
} 
.menu6::not(:hover){ 
	 transition: 0.5s;  
} 
 
.menu1::active{ 
	background-color: #b83c2e; 
} 
 
.menu7 { 
	float: right; 
	padding-right: 25px; 
	padding-top: 4px; 
	padding-bottom: 5px; 
}
		<div class="topmenu"> 
				<div class="menu1"> 
					<a href="#" class="a">Home</a> 
				</div> 
				<div class="menu2"> 
					<a href="#" class="a">About Us </a> 
				</div> 
				<div class="menu3"> 
					<a href="#" class="a">Our services</a> 
				</div> 
				<div class="menu4"> 
					<a href="#" class="a">Deposits</a> 
				</div> 
				<div class="menu5"> 
					<a href="#" class="a">FAQs</a> 
				</div> 
				<div class="menu6"> 
					<a href="#" class="a">Contact us</a> 
				</div> 
				<div class="menu7"> 
					<a href="tel:(2457) 555 222 333" class="a">Call Us: (2457) 555 222 333</a> 
				</div> 
		</div>

Вообщем, вот так реализовал меню , можно ли как то с помощью псевдокласов сделать по другому, что бы было меньше кода? Если можно , то как?

Answer 1

.topmenu { 
	width: 90%; 
	height: 35px; 
	background: linear-gradient(to top,#202020,#454545); 
	border-radius: 5px; 
	margin-left: 5%; 
	margin-right: 5%;  
} 
.a { 
	margin: 0; 
	font-family: Helvetica; 
	font-size: 22px; 
		color: #e3e3e3;3	text-align: center; 
	font-style: normal; 
	color: white; 
	text-decoration: none; 
} 
.menu1, .menu2, .menu3, .menu4, .menu5, .menu6{ 
	display: inline-block; 
	padding-right: 25px;  
	padding-left: 25px; 
	padding-top: 4px; 
	padding-bottom: 5px; 
} 
.menu1:hover, .menu2:hover, .menu3:hover, 
.menu4:hover, .menu5:hover, .menu6:hover{ 
	 transition: 0.5s; 
	background-color: #b83c2e; 
	border-radius: 5px 0 0 5px; 
} 
.menu1::not(:hover), .menu2::not(:hover), .menu3::not(:hover), 
.menu4::not(:hover), .menu5::not(:hover), .menu6::not(:hover) 
{ 
	 transition: 0.5s;  
} 
.menu1::active{ 
	background-color: #b83c2e; 
} 
.menu7 { 
	float: right; 
	padding-right: 25px; 
	padding-top: 4px; 
	padding-bottom: 5px; 
}
<div class="topmenu"> 
  <div class="menu1"> 
    <a href="#" class="a">Home</a> 
  </div> 
  <div class="menu2"> 
    <a href="#" class="a">About Us </a> 
  </div> 
  <div class="menu3"> 
    <a href="#" class="a">Our services</a> 
  </div> 
  <div class="menu4"> 
    <a href="#" class="a">Deposits</a> 
  </div> 
  <div class="menu5"> 
    <a href="#" class="a">FAQs</a> 
  </div> 
  <div class="menu6"> 
    <a href="#" class="a">Contact us</a> 
  </div> 
  <div class="menu7"> 
    <a href="tel:(2457) 555 222 333" class="a">Call Us: (2457) 555 222 333</a> 
  </div> 
</div>

READ ALSO
Правильное позиционирование svg polygon?

Правильное позиционирование svg polygon?

Создал svg polygon треугольник, теперь встал вопрос, как правильно его выровнять по центру изображения?

237
html;css margin:0 auto; выравнивание по центру

html;css margin:0 auto; выравнивание по центру

Локально подключен bootstrap,возможно запутался в наследовании

221
убрать отступ при наведении на ссылки?

убрать отступ при наведении на ссылки?

при наведении на элемент делаю бордерно начинается дискотека

214
Вопрос по background-image в css?

Вопрос по background-image в css?

Подскажите как решить эту задачу?

208