Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Удалить стили прописанные в CSS у body и html (https://javascript.ru/forum/misc/73075-udalit-stili-propisannye-v-css-u-body-i-html.html)

Sergey1986 20.03.2018 01:09

Удалить стили прописанные в CSS у body и html
 
Всем добра!
Не могу сообразить как удалить стили у body и html

если в css у них прописано
body {
margin: 0;
padding: 0;
height: 100%;
}

html {
height: 100%;
min-width: 1300px;
}

Заранее спасибо!

j0hnik 20.03.2018 02:25

удалять, если стили присутствуют все стили у обоих элементов?
у каждого по отдельности, или если значение конкретно свойства равно то удаляем свойство?

Sergey1986 20.03.2018 23:43

у убоих) можно и потельнсти

Белый шум 21.03.2018 04:22

Удалить нельзя, можно только переназначить на дефолтные значения:
<script>
document.body.style.margin = '8px';
// и т.д. для всех стилей.
</script>

рони 21.03.2018 08:45

Цитата:

Сообщение от Белый шум
Удалить нельзя,

:-?
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
 body {
 margin: 0;
 padding: 0;
 height: 100%;
 background-color: #FF0000;
 }

  </style>

  <script>
  window.setTimeout(function() {
    document.styleSheets[0].deleteRule(0)
},2000)
  </script>
</head>

<body>


</body>
</html>

Белый шум 21.03.2018 11:01

Век живи - век учись :)

j0hnik 21.03.2018 12:19

по теме
<!DOCTYPE html>
<html>
<head>
	<title>Untitled</title>
	<meta charset="utf-8">
	<style type="text/css">

	body {
		margin: 0;
		padding: 0;
		height: 100%;
	}

	html {
		height: 100%;
		min-width: 1300px;
	}
</style>
</head>
<body>
	<script>
		[['body',[['margin','0px'],['padding','0px'],['height','100%']]],
		['html',[['height', '100%'],['minWidth', '1300px']]]].forEach(el=>{
			var style = document.styleSheets, rules = style[style.length-1].rules,
			ind = [].findIndex.call(rules, rule => rule.selectorText == el[0]),
			prop = style[0].rules[ind].style;
			if(el[1].every(el=>prop[el[0]] == el[1])) document.styleSheets[0].deleteRule(ind);
		});
	</script>
</body>
</html>

Sergey1986 28.03.2018 16:38

Спасибо!


Часовой пояс GMT +3, время: 20:36.