Ðо Ñого, как наÑнÑÑе изÑÑаÑÑ ÑпоÑÐ¾Ð±Ñ ÑабоÑÑ Ñо ÑÑилÑми и клаÑÑами в JavaScript, еÑÑÑ Ð¾Ð´Ð½Ð¾ важное пÑавило. ÐадеемÑÑ, ÑÑо доÑÑаÑоÑно оÑевидно, но Ð¼Ñ Ð²ÑÑ Ñавно Ð´Ð¾Ð»Ð¶Ð½Ñ Ð¾Ð± ÑÑом ÑпомÑнÑÑÑ.
Ðак пÑавило, ÑÑÑеÑÑвÑÐµÑ Ð´Ð²Ð° ÑпоÑоба Ð·Ð°Ð´Ð°Ð½Ð¸Ñ ÑÑилей Ð´Ð»Ñ ÑлеменÑа:
- СоздаÑÑ ÐºÐ»Ð°ÑÑ Ð² CSS и иÑполÑзоваÑÑ ÐµÐ³Ð¾:
<div class="..."> - ÐиÑаÑÑ ÑÑили непоÑÑедÑÑвенно в аÑÑибÑÑе
style:<div style="...">.
JavaScript Ð¼Ð¾Ð¶ÐµÑ Ð¼ÐµÐ½ÑÑÑ Ð¸ клаÑÑÑ, и ÑвойÑÑво style.
ÐлаÑÑÑ â вÑегда пÑедпоÑÑиÑелÑнÑй ваÑÐ¸Ð°Ð½Ñ Ð¿Ð¾ ÑÑÐ°Ð²Ð½ÐµÐ½Ð¸Ñ Ñо style. ÐÑ Ð´Ð¾Ð»Ð¶Ð½Ñ Ð¼Ð°Ð½Ð¸Ð¿ÑлиÑоваÑÑ ÑвойÑÑвом style ÑолÑко в Ñом ÑлÑÑае, еÑли клаÑÑÑ Â«Ð½Ðµ могÑÑ ÑпÑавиÑÑÑÑ».
ÐапÑимеÑ, иÑполÑзование style ÑвлÑеÑÑÑ Ð¿ÑиемлемÑм, еÑли Ð¼Ñ Ð²ÑÑиÑлÑем кооÑдинаÑÑ ÑлеменÑа динамиÑеÑки и Ñ
оÑим ÑÑÑановиÑÑ Ð¸Ñ
из JavaScript:
let top = /* ÑложнÑе ÑаÑÑÑÑÑ */;
let left = /* ÑложнÑе ÑаÑÑÑÑÑ */;
elem.style.left = left; // напÑимеÑ, '123px', знаÑение вÑÑиÑлÑеÑÑÑ Ð²Ð¾ вÑÐµÐ¼Ñ ÑабоÑÑ ÑкÑипÑа
elem.style.top = top; // напÑимеÑ, '456px'
ÐÑ Ñакже можем ÑÑÑановиÑÑ ÑÑÐ°Ð·Ñ Ð½ÐµÑколÑко ÑÑилей Ð´Ð»Ñ ÑлеменÑа, иÑполÑзÑÑ ÑвойÑÑво cssText. Ðо Ñ Ð½Ð¸Ð¼ нÑжно бÑÑÑ Ð¾ÑÑоÑожнее, Ñ.к оно Ð¼Ð¾Ð¶ÐµÑ ÐºÐ°Ðº добавиÑÑ ÑÑили к ÑÑÑеÑÑвÑÑÑим, Ñак и полноÑÑÑÑ Ð¿ÐµÑезапиÑаÑÑ Ð¸Ñ
на новÑе:
let top = /* ÑложнÑе ÑаÑÑÑÑÑ */;
let left = /* ÑложнÑе ÑаÑÑÑÑÑ */;
// Ð¿Ð¾Ð»Ð½Ð°Ñ Ð¿ÐµÑезапиÑÑ ÑÑилей elem, иÑполÑзÑем =
elem.style.cssText = `
top: ${top};
left: ${left};
`;
// добавление новÑÑ
ÑÑилей к ÑÑÑеÑÑвÑÑÑим ÑÑилÑм elem, иÑполÑзÑем +=
elem.style.cssText += `
top: ${top};
left: ${left};
`;
// еÑли ÑлеменÑÑ Ñже Ð·Ð°Ð´Ð°Ð½Ñ ÑÑили, коÑоÑÑе Ð¼Ñ Ñ
оÑим добавиÑÑ (+=),
// они бÑдÑÑ Ð¿ÐµÑезапиÑÐ°Ð½Ñ Ð½Ð° новÑе.
РдÑÑÐ³Ð¸Ñ ÑлÑÑаÑÑ , напÑимеÑ, ÑÑÐ¾Ð±Ñ ÑделаÑÑ ÑекÑÑ ÐºÑаÑнÑм, добавиÑÑ Ð·Ð½Ð°Ñок Ñона â опиÑÑваем ÑÑо в CSS и добавлÑем клаÑÑ (JavaScript Ð¼Ð¾Ð¶ÐµÑ ÑÑо ÑделаÑÑ). ÐÑо более гибкое и лÑгкое в поддеÑжке ÑеÑение.
className и classList
Ðзменение клаÑÑа ÑвлÑеÑÑÑ Ð¾Ð´Ð½Ð¸Ð¼ из наиболее ÑаÑÑо иÑполÑзÑемÑÑ Ð´ÐµÐ¹ÑÑвий в ÑкÑипÑÐ°Ñ .
Ðогда-Ñо давно в JavaScript ÑÑÑеÑÑвовало огÑаниÑение: заÑезеÑвиÑованное Ñлово Ñипа "class" не могло бÑÑÑ ÑвойÑÑвом обÑекÑа. ÐÑо огÑаниÑение ÑейÑÐ°Ñ Ð¾ÑÑÑÑÑÑвÑеÑ, но в Ñо вÑÐµÐ¼Ñ Ð±Ñло невозможно имеÑÑ ÑвойÑÑво elem.class.
ÐоÑÑÐ¾Ð¼Ñ Ð´Ð»Ñ ÐºÐ»Ð°ÑÑов бÑло введено ÑÑ
ожее ÑвойÑÑво "className": elem.className ÑооÑвеÑÑÑвÑÐµÑ Ð°ÑÑибÑÑÑ "class".
ÐапÑимеÑ:
<body class="main page">
<script>
alert(document.body.className); // main page
</script>
</body>
ÐÑли Ð¼Ñ Ð¿ÑиÑваиваем ÑÑо-Ñо elem.className, Ñо ÑÑо заменÑÐµÑ Ð²ÑÑ ÑÑÑÐ¾ÐºÑ Ñ ÐºÐ»Ð°ÑÑами. Ðногда ÑÑо Ñо, ÑÑо нам нÑжно, но ÑаÑÑо Ð¼Ñ Ñ
оÑим добавиÑÑ/ÑдалиÑÑ Ð¾Ð´Ð¸Ð½ клаÑÑ.
ÐÐ»Ñ ÑÑого еÑÑÑ Ð´ÑÑгое ÑвойÑÑво: elem.classList.
elem.classList â ÑÑо ÑпеÑиалÑнÑй обÑÐµÐºÑ Ñ Ð¼ÐµÑодами Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ/ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ð¾Ð´Ð½Ð¾Ð³Ð¾ клаÑÑа.
ÐапÑимеÑ:
<body class="main page">
<script>
// добавление клаÑÑа
document.body.classList.add('article');
alert(document.body.className); // main page article
</script>
</body>
Так ÑÑо Ð¼Ñ Ð¼Ð¾Ð¶ÐµÐ¼ ÑабоÑаÑÑ ÐºÐ°Ðº Ñо ÑÑÑокой полного клаÑÑа, иÑполÑзÑÑ className, Ñак и Ñ Ð¾ÑделÑнÑми клаÑÑами, иÑполÑзÑÑ classList. ÐÑбиÑаем ÑÐ¾Ñ Ð²Ð°ÑианÑ, коÑоÑÑй нам Ñдобнее.
ÐеÑÐ¾Ð´Ñ classList:
elem.classList.add/remove("class")â добавиÑÑ/ÑдалиÑÑ ÐºÐ»Ð°ÑÑ.elem.classList.toggle("class")â добавиÑÑ ÐºÐ»Ð°ÑÑ, еÑли его неÑ, инаÑе ÑдалиÑÑ.elem.classList.contains("class")â пÑовеÑка налиÑÐ¸Ñ ÐºÐ»Ð°ÑÑа, возвÑаÑаеÑtrue/false.
ÐÑоме Ñого, classList ÑвлÑеÑÑÑ Ð¿ÐµÑебиÑаемÑм, поÑÑÐ¾Ð¼Ñ Ð¼Ð¾Ð¶Ð½Ð¾ пеÑеÑиÑлиÑÑ Ð²Ñе клаÑÑÑ Ð¿Ñи помоÑи for..of:
<body class="main page">
<script>
for (let name of document.body.classList) {
alert(name); // main, заÑем page
}
</script>
</body>
СвойÑÑво style
СвойÑÑво elem.style â ÑÑо обÑекÑ, коÑоÑÑй ÑооÑвеÑÑÑвÑÐµÑ ÑомÑ, ÑÑо напиÑано в аÑÑибÑÑе "style".
СвойÑÑва из одного Ñлова запиÑÑваÑÑÑÑ Ñак же, Ñ Ð¼Ð°Ð»ÐµÐ½Ñкой бÑквÑ:
background => elem.style.background
top => elem.style.top
opacity => elem.style.opacity
ÐÐ»Ñ ÑвойÑÑв из неÑколÑÐºÐ¸Ñ Ñлов иÑполÑзÑеÑÑÑ camelCase:
background-color => elem.style.backgroundColor
z-index => elem.style.zIndex
border-left-width => elem.style.borderLeftWidth
ÐапÑимеÑ:
document.body.style.backgroundColor = prompt('background color?', 'green');
СÑили Ñ Ð±ÑаÑзеÑнÑм пÑеÑикÑом, напÑимеÑ, -moz-border-radius, -webkit-border-radius пÑеобÑазÑÑÑÑÑ Ð¿Ð¾ ÑÐ¾Ð¼Ñ Ð¶Ðµ пÑинÑипÑ: деÑÐ¸Ñ Ð¾Ð·Ð½Ð°ÑÐ°ÐµÑ Ð·Ð°Ð³Ð»Ð°Ð²Ð½ÑÑ Ð±ÑквÑ.
ÐапÑимеÑ:
button.style.MozBorderRadius = '5px';
button.style.WebkitBorderRadius = '5px';
СбÑÐ¾Ñ ÑÑилей
Ðногда нам нÑжно добавиÑÑ ÑвойÑÑво ÑÑилÑ, а поÑом, позже, ÑбÑаÑÑ ÐµÐ³Ð¾.
ÐапÑимеÑ, ÑÑÐ¾Ð±Ñ ÑкÑÑÑÑ ÑлеменÑ, Ð¼Ñ Ð¼Ð¾Ð¶ÐµÐ¼ задаÑÑ elem.style.display = "none".
ÐаÑем Ð¼Ñ Ð¼Ð¾Ð¶ÐµÐ¼ ÑдалиÑÑ ÑвойÑÑво style.display, ÑÑÐ¾Ð±Ñ Ð²ÐµÑнÑÑÑÑÑ Ðº пеÑвонаÑалÑÐ½Ð¾Ð¼Ñ ÑоÑÑоÑниÑ. ÐмеÑÑо delete elem.style.display Ð¼Ñ Ð´Ð¾Ð»Ð¶Ð½Ñ Ð¿ÑиÑвоиÑÑ ÐµÐ¼Ñ Ð¿ÑÑÑÑÑ ÑÑÑокÑ: elem.style.display = "".
// еÑли Ð¼Ñ Ð·Ð°Ð¿ÑÑÑим ÑÑÐ¾Ñ ÐºÐ¾Ð´, <body> "мигнÑÑ"
document.body.style.display = "none"; // ÑкÑÑÑÑ
setTimeout(() => document.body.style.display = "", 1000); // возвÑÐ°Ñ Ðº ноÑмалÑÐ½Ð¾Ð¼Ñ ÑоÑÑоÑниÑ
ÐÑли Ð¼Ñ ÑÑÑановим в style.display пÑÑÑÑÑ ÑÑÑокÑ, Ñо бÑаÑÐ·ÐµÑ Ð¿ÑÐ¸Ð¼ÐµÐ½Ð¸Ñ CSS-клаÑÑÑ Ð¸ вÑÑÑоеннÑе ÑÑили, как еÑли Ð±Ñ Ñакого ÑвойÑÑва style.display вообÑе не бÑло.
СледиÑе за единиÑами измеÑениÑ
Ðе забÑдÑÑе добавиÑÑ Ðº знаÑениÑм единиÑÑ Ð¸Ð·Ð¼ÐµÑениÑ.
ÐапÑимеÑ, Ð¼Ñ Ð´Ð¾Ð»Ð¶Ð½Ñ ÑÑÑанавливаÑÑ 10px, а не пÑоÑÑо 10 в ÑвойÑÑво elem.style.top. ÐнаÑе ÑÑо не ÑÑабоÑаеÑ:
<body>
<script>
// не ÑабоÑаеÑ!
document.body.style.margin = 20;
alert(document.body.style.margin); // '' (пÑÑÑÐ°Ñ ÑÑÑока, пÑиÑваивание игноÑиÑÑеÑÑÑ)
// ÑейÑÐ°Ñ Ð´Ð¾Ð±Ð°Ð²Ð¸Ð¼ единиÑÑ Ð¸Ð·Ð¼ÐµÑÐµÐ½Ð¸Ñ (px) - и заÑабоÑаеÑ
document.body.style.margin = '20px';
alert(document.body.style.margin); // 20px
alert(document.body.style.marginTop); // 20px
alert(document.body.style.marginLeft); // 20px
</script>
</body>
ÐожалÑйÑÑа, обÑаÑиÑе внимание, бÑаÑÐ·ÐµÑ Â«ÑаÑпаковÑваеÑ» ÑвойÑÑво style.margin в поÑледниÑ
ÑÑÑокаÑ
и вÑÐ²Ð¾Ð´Ð¸Ñ style.marginLeft и style.marginTop из него.
ÐÑÑиÑленнÑе ÑÑили: getComputedStyle
ÐÑак, измениÑÑ ÑÑÐ¸Ð»Ñ Ð¾ÑÐµÐ½Ñ Ð¿ÑоÑÑо. Ðо как его пÑоÑиÑаÑÑ?
ÐапÑимеÑ, Ð¼Ñ Ñ Ð¾Ñим знаÑÑ ÑазмеÑ, оÑÑÑÑпÑ, ÑÐ²ÐµÑ ÑлеменÑа. Ðак ÑÑо ÑделаÑÑ?
СвойÑÑво style опеÑиÑÑÐµÑ ÑолÑко знаÑением аÑÑибÑÑа "style", без ÑÑÑÑа CSS-каÑкада.
ÐоÑÑомÑ, иÑполÑзÑÑ elem.style, Ð¼Ñ Ð½Ðµ можем пÑоÑиÑаÑÑ Ð½Ð¸Ñего, ÑÑо пÑиÑ
Ð¾Ð´Ð¸Ñ Ð¸Ð· клаÑÑов CSS.
ÐапÑимеÑ, здеÑÑ style не Ð¼Ð¾Ð¶ÐµÑ Ð²Ð¸Ð´ÐµÑÑ Ð¾ÑÑÑÑпÑ:
<head>
<style> body { color: red; margin: 5px } </style>
</head>
<body>
ÐÑаÑнÑй ÑекÑÑ
<script>
alert(document.body.style.color); // пÑÑÑо
alert(document.body.style.marginTop); // пÑÑÑо
</script>
</body>
â¦Ðо ÑÑо, еÑли нам нÑжно, Ñкажем, ÑвелиÑиÑÑ Ð¾ÑÑÑÑп на 20px? ÐÐ»Ñ Ð½Ð°Ñала нÑжно его ÑекÑÑее знаÑение полÑÑиÑÑ.
ÐÐ»Ñ ÑÑого еÑÑÑ Ð¼ÐµÑод: getComputedStyle.
СинÑакÑиÑ:
getComputedStyle(element, [pseudo])
- element
- ÐлеменÑ, знаÑÐµÐ½Ð¸Ñ Ð´Ð»Ñ ÐºÐ¾ÑоÑого нÑжно полÑÑиÑÑ
- pseudo
- УказÑваеÑÑÑ, еÑли нÑжен ÑÑÐ¸Ð»Ñ Ð¿ÑевдоÑлеменÑа, напÑимеÑ
::before. ÐÑÑÑÐ°Ñ ÑÑÑока или оÑÑÑÑÑÑвие аÑгÑменÑа ознаÑаÑÑ Ñам ÑлеменÑ.
РезÑлÑÑÐ°Ñ Ð²Ñзова â обÑÐµÐºÑ Ñо ÑÑилÑми, поÑ
ожий на elem.style, но Ñ ÑÑÑÑом вÑеÑ
CSS-клаÑÑов.
ÐапÑимеÑ:
<head>
<style> body { color: red; margin: 5px } </style>
</head>
<body>
<script>
let computedStyle = getComputedStyle(document.body);
// ÑейÑÐ°Ñ Ð¼Ñ Ð¼Ð¾Ð¶ÐµÐ¼ пÑоÑиÑаÑÑ Ð¾ÑÑÑÑп и ÑвеÑ
alert( computedStyle.marginTop ); // 5px
alert( computedStyle.color ); // rgb(255, 0, 0)
</script>
</body>
ÐÑÑÑ Ð´Ð²Ðµ конÑепÑии в CSS:
- ÐÑÑиÑленное (computed) знаÑение â ÑÑо Ñо, коÑоÑое полÑÑено поÑле пÑÐ¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²ÑеÑ
CSS-пÑавил и CSS-наÑледованиÑ. ÐапÑимеÑ,
height:1emилиfont-size:125%. - ÐконÑаÑелÑное (resolved) знаÑение â непоÑÑедÑÑвенно пÑименÑемое к ÑлеменÑÑ. ÐнаÑениÑ
1emили125%ÑвлÑÑÑÑÑ Ð¾ÑноÑиÑелÑнÑми. ÐÑаÑÐ·ÐµÑ Ð±ÐµÑÑÑ Ð²ÑÑиÑленное знаÑение и Ð´ÐµÐ»Ð°ÐµÑ Ð²Ñе единиÑÑ Ð¸Ð·Ð¼ÐµÑÐµÐ½Ð¸Ñ ÑикÑиÑованнÑми и абÑолÑÑнÑми, напÑимеÑ,height:20pxилиfont-size:16px. ÐÐ»Ñ Ð³ÐµÐ¾Ð¼ÐµÑÑиÑеÑÐºÐ¸Ñ ÑвойÑÑв ÑазÑеÑÑннÑе знаÑÐµÐ½Ð¸Ñ Ð¼Ð¾Ð³ÑÑ Ð¸Ð¼ÐµÑÑ Ð¿Ð»Ð°Ð²Ð°ÑÑÑÑ ÑоÑкÑ, напÑимеÑ,width:50.5px.
ÐавнÑм-давно getComputedStyle бÑл Ñоздан Ð´Ð»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ Ð²ÑÑиÑленнÑÑ
знаÑений, но оказалоÑÑ, ÑÑо оконÑаÑелÑнÑе знаÑÐµÐ½Ð¸Ñ Ð³Ð¾Ñаздо Ñдобнее, и ÑÑандаÑÑ Ð¸Ð·Ð¼ÐµÐ½Ð¸Ð»ÑÑ.
Так ÑÑо, в наÑÑоÑÑее вÑÐµÐ¼Ñ getComputedStyle ÑакÑиÑеÑки возвÑаÑÐ°ÐµÑ Ð¾ÐºÐ¾Ð½ÑаÑелÑное знаÑение ÑвойÑÑва, Ð´Ð»Ñ Ð³ÐµÐ¾Ð¼ÐµÑÑии оно обÑÑно в пикÑелÑÑ
.
getComputedStyle ÑÑебÑÐµÑ Ð¿Ð¾Ð»Ð½Ð¾Ðµ ÑвойÑÑво!ÐÐ»Ñ Ð¿ÑавилÑного полÑÑÐµÐ½Ð¸Ñ Ð·Ð½Ð°ÑÐµÐ½Ð¸Ñ Ð½Ñжно ÑказаÑÑ ÑоÑное ÑвойÑÑво. ÐапÑимеÑ: paddingLeft, marginTop, borderTopWidth. ÐÑи обÑаÑении к ÑокÑаÑÑнномÑ: padding, margin, border â пÑавилÑнÑй ÑезÑлÑÑÐ°Ñ Ð½Ðµ гаÑанÑиÑÑеÑÑÑ.
ÐапÑимеÑ, еÑли еÑÑÑ ÑвойÑÑва paddingLeft/paddingTop, Ñо ÑÑо Ð¼Ñ Ð¿Ð¾Ð»ÑÑим вÑзÑÐ²Ð°Ñ getComputedStyle(elem).padding? ÐиÑего, или, Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ, «ÑгенеÑиÑованное» знаÑение из извеÑÑнÑÑ
внÑÑÑенниÑ
оÑÑÑÑпов? СÑандаÑÑа Ð´Ð»Ñ ÑÑого неÑ.
:visited ÑÑÑлкам, ÑкÑÑваÑÑÑÑ!ÐоÑеÑÑннÑе ÑÑÑлки могÑÑ Ð±ÑÑÑ Ð¾ÐºÑаÑÐµÐ½Ñ Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ Ð¿ÑевдоклаÑÑа :visited.
Ðо getComputedStyle не даÑÑ Ð´Ð¾ÑÑÑп к ÑÑой инÑоÑмаÑии, ÑÑÐ¾Ð±Ñ Ð¿ÑоизволÑÐ½Ð°Ñ ÑÑÑаниÑа не могла опÑеделиÑÑ, поÑеÑал ли полÑзоваÑÐµÐ»Ñ ÑÑ Ð¸Ð»Ð¸ инÑÑ ÑÑÑлкÑ, пÑовеÑив ÑÑили.
JavaScript не Ð²Ð¸Ð´Ð¸Ñ ÑÑили, пÑименÑемÑе Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ :visited. ÐÑоме Ñого, в CSS еÑÑÑ Ð¾Ð³ÑаниÑение, коÑоÑое запÑеÑÐ°ÐµÑ Ð² ÑелÑÑ
безопаÑноÑÑи пÑименÑÑÑ Ðº :visited CSS-ÑÑили, изменÑÑÑие геомеÑÑÐ¸Ñ ÑлеменÑа. ÐÑо гаÑанÑиÑÑеÑ, ÑÑо Ð½ÐµÑ Ð¾Ð±Ñ
одного пÑÑи Ð´Ð»Ñ Â«Ð·Ð»Ð¾Ð¹Â» ÑÑÑаниÑÑ Ð¿ÑовеÑиÑÑ, бÑла ли ÑÑÑлка поÑеÑена и, ÑледоваÑелÑно, наÑÑÑиÑÑ ÐºÐ¾Ð½ÑиденÑиалÑноÑÑÑ.
ÐÑого
ÐÐ»Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ ÐºÐ»Ð°ÑÑами ÑÑÑеÑÑвÑÑÑ Ð´Ð²Ð° DOM-ÑвойÑÑва:
classNameâ ÑÑÑоковое знаÑение, Ñдобно Ð´Ð»Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð²Ñем набоÑом клаÑÑов.classListâ обÑÐµÐºÑ Ñ Ð¼ÐµÑодамиadd/remove/toggle/contains, Ñдобно Ð´Ð»Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¾ÑделÑнÑми клаÑÑами.
ЧÑÐ¾Ð±Ñ Ð¸Ð·Ð¼ÐµÐ½Ð¸ÑÑ ÑÑили:
-
СвойÑÑво
styleÑвлÑеÑÑÑ Ð¾Ð±ÑекÑом Ñо ÑÑилÑми в ÑоÑмаÑе camelCase. ЧÑение и запиÑÑ Ð² него ÑабоÑаÑÑ Ñак же, как изменение ÑооÑвеÑÑÑвÑÑÑÐ¸Ñ ÑвойÑÑв в аÑÑибÑÑе"style". ЧÑÐ¾Ð±Ñ ÑзнаÑÑ, как добавиÑÑ Ð² негоimportantи делаÑÑ Ð½ÐµÐºÐ¾ÑоÑÑе дÑÑгие Ñедкие веÑи â ÑмоÑÑиÑе докÑменÑаÑиÑ. -
СвойÑÑво
style.cssTextÑооÑвеÑÑÑвÑÐµÑ Ð²ÑÐµÐ¼Ñ Ð°ÑÑибÑÑÑ"style", полной ÑÑÑоке ÑÑилей.
ÐÐ»Ñ ÑÑÐµÐ½Ð¸Ñ Ð¾ÐºÐ¾Ð½ÑаÑелÑнÑÑ ÑÑилей (Ñ ÑÑÑÑом вÑÐµÑ ÐºÐ»Ð°ÑÑов, поÑле пÑÐ¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ CSS и вÑÑиÑÐ»ÐµÐ½Ð¸Ñ Ð¾ÐºÐ¾Ð½ÑаÑелÑнÑÑ Ð·Ð½Ð°Ñений) иÑполÑзÑеÑÑÑ:
- ÐеÑод
getComputedStyle(elem, [pseudo])возвÑаÑÐ°ÐµÑ Ð¾Ð±ÑекÑ, Ð¿Ð¾Ñ Ð¾Ð¶Ð¸Ð¹ по ÑоÑмаÑÑ Ð½Ð°style. ТолÑко Ð´Ð»Ñ ÑÑениÑ.
ÐомменÑаÑии
<code>, Ð´Ð»Ñ Ð½ÐµÑколÑÐºÐ¸Ñ ÑÑÑок кода — Ñег<pre>, еÑли болÑÑе 10 ÑÑÑок — ÑÑÑÐ»ÐºÑ Ð½Ð° пеÑоÑниÑÑ (plnkr, JSBin, codepenâ¦)