Jump to content
  • 0

Как в данном случае работает наследование?


tigrus2014
 Share

Question

Здравствуйте! Есть такой код css

html, body {width:100%; padding:0; margin:0;}
body {font: 14px/25px Arial, Helvetica, sans-serif;font-family: 'Open Sans', sans-serif;background:#F6F8F7;padding:0 40px ;}
body .wrap-body{}

И собственно HTML (весь не пишу только часть)

<body>
<div class="wrap-body">
	<div class="header">
		<div id='cssmenu' class="align-right">
			<ul>
			   <li class="active"><a href='index.html'><span>zSawyer</span></a></li>
			   <li class=' has-sub'><a href='archive.html'><span>Blog</span></a>
				  <ul>
					 <li class='has-sub'><a href='#'><span>Item 1</span></a>
						<ul>
						   <li><a href='#'><span>Sub Item</span></a></li>
						   <li class='last'><a href='#'><span>Sub Item</span></a></li>
						</ul>
					 </li>
					 <li class='has-sub'><a href='#'><span>Item 2</span></a>
						<ul>
						   <li><a href='#'><span>Sub Item</span></a></li>
						   <li class='last'><a href='#'><span>Sub Item</span></a></li>
						</ul>
					 </li>
				  </ul>
			   </li>
			   <li><a href='#'><span>Gallery</span></a></li>
			   <li><a href='single.html'><span>About</span></a></li>
			   <li class='last'><a href='contact.html'><span>Contact</span></a></li>
			</ul>
		</div>
	</div></div>
</body>
</html>

Спрашивается зачем нужно и HTML и Body давать width 100%? Если я не ошибаюсь свойство от html перейдёт к body и body будет тоже width 100%? А от него и унаследуется body .wrap-body{}? Так? 

Единственное что приходит в голову, что какому-то div в коде ( уже в теге body) дано позиционирование. Вот если слои absolut или relative, они ( и от них) наследуются свойства? 

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Странный код. 100% ширины для body плюс горизонтальные padding-и по 40px — разве это не приводит к гориз. скроллингу? Или где-то еще (в reset.css или чем-то подобном) спрятан * { box-sizing: border-box }?

Конструкция html, body { height: 100% } обычно используется именно для высоты — высота наследуется только от явно указанной высоты предка и без этих звеньев цепочки высоту окна браузера «не донести» до внутренних оберток (что бывает нужно для прибитого футера). Сейчас, когда можно задать height:100vh непосредственно нужному элементу, она нужна реже. Но смысла делать так для ширины я вообще не вижу, блоки ведь занимают всю доступную ширину предка по умолчанию.

  • Like 1
Link to comment
Share on other sites

  • 0
Только что, SelenIT сказал:

Но смысла делать так для ширины я вообще не вижу, блоки ведь занимают всю доступную ширину предка по умолчанию.

Так я за тоже! Да там есть box-sizing: border-box Я бы Задал для HTML 100%, соответственно для Body и то что в нем/ Без всяких body .wrap-body{} А  .wrap-body (без body конечно) width если нужна другая ширина. Или padding ему или margin 0 auto  дал  например 

html {width:100%; padding:0; margin:0;}
body {font: 14px/25px Arial, Helvetica, sans-serif;font-family: 'Open Sans', sans-serif;background:#F6F8F7;padding:0 40px ;}
.wrap-body{width: 92%; margin: 0 auto}

Так лучше по-моему?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy