197 of 264 menu

Функсияи getComputedStyle

Функсияи getComputedStyle имкон медиҳад, ки қимати ҳар гуна хусусияти CSS-и унсурро гиред, ҳатто аз файли CSS.

Синтаксис

let объект = getComputedStyle(элемент);

Тафсилот

Чӣ тавр кор мекунад (диққат: на чунон ки мо интизорӣ дорем): параметри функсия унсурро қабул мекунад, ва объектеро бармегардонад, ки ҳама хусусиятҳои CSS-и унсури додашударо дар бар мегирад. Биёед ин объектро дар тағирёбандаи style гузорем. Ном ихтиёрӣ аст, ин танҳо тағирёбанда аст - чӣ гуна ихтироъ кунем, ҳамон тавр муроҷиат мекунем:

let elem = document.querySelector('#elem'); let style = getComputedStyle(elem); // дар style хусусиятҳои CSS ҷойгиранд

Биёед, масалан, паҳноиро чоп кунем. Ин чунин анҷом дода мешавад - style.width:

let elem = document.querySelector('#elem'); let style = getComputedStyle(elem); console.log(style.width);

Барои чоп кардани, масалан, padding-и чап - чунин мекунем - style.paddingLeft:

let elem = document.querySelector('#elem'); let style = getComputedStyle(elem); console.log(style.paddingLeft);

Дар мисоли оянда мо ҳама хусусиятҳои CSS-ро, ки моро манфиат доранд, барои унсури худ чоп мекунем:

<div id="elem">матн</div> #elem { width: 200px; height: 200px; padding: 30px; border: 20px solid #BCBCBC; overflow: auto; } let elem = document.querySelector('#elem'); let style = getComputedStyle(elem); console.log('paddingLeft: ' + style.paddingLeft); // '30px'-ро чоп мекунад console.log('borderTopWidth: ' + style.borderTopWidth); // '20px'-ро чоп мекунад console.log('borderTopStyle: ' + style.borderTopStyle); // 'solid'-ро чоп мекунад

Нодурустӣ дар getComputedStyle

Гаҳо функсияи getComputedStyle бо паҳноӣ ва баландӣ комилан дуруст кор намекунад. Ин ба он алоқаманд аст, ки padding ва сарҳад блокро васеъ мекунанд. Дар мисоли оянда ба блок паҳноии 200px инчунин сарҳад ва border таъин шудааст. Паҳноии воқеии блок 300px аст, вале getComputedStyle ҳамон тавр 200px-ро чоп мекунад:

<div id="elem">матн</div> #elem { width: 200px; height: 200px; padding: 30px; border: 20px solid #BCBCBC; overflow: auto; } let elem = document.querySelector('#elem'); let style = getComputedStyle(elem); console.log('width: ' + style.width); // '200px'-ро чоп мекунад console.log('height: ' + style.height); // '200px'-ро чоп мекунад

Яъне: маълум мешавад, ки getComputedStyle васеъшавии блокро нодида мегирад ва андозаҳои онро чунон чоп мекунад, ки гӯё ин васеъшавӣ вуҷуд надорад. Вале ин ҳама нест: инчунин аҳамияти мавҷуд будан ё набудани навори ҷараёнро дорад - баъзе браузерҳо паҳноии навори ҷараёнро аз паҳноии ҳисобшуда тавассути getComputedStyle кам мекунанд, ва баъзе кам намекунанд. Ба ҳама гуна ин ҷо умуман ҳама чиз кроссбраузерӣ нест ва беҳтар аст, ки getComputedStyle барои муайян кардани паҳноӣ ва баландӣ истифода набаред, вале бо метрҳо истифода баред, ки мо дар зер меомӯзем.

Қиматҳои ҳисобшуда

Як нуқтаи дигар ҳаст: агар паҳноӣ дар % таъин шуда бошад - пас аз кор кардани getComputedStyle мо онро дар px мебинем. Яъне дар асл мо паҳноии таъиншударо намегирем, балки паҳноии ҳисобшударо. Намунаи зеринро бубинед:

<div id="elem">матн</div> #elem { width: 30%; /* паҳноӣ дар % таъин шудааст */ height: 200px; padding: 30px; border: 20px solid #BCBCBC; overflow: auto; } let elem = document.querySelector('#elem'); let style = getComputedStyle(elem); console.log('width: ' + style.width); // паҳноиро дар px чоп мекунад

Инчунин бубинед

  • хусусияти cssText,
    ки омӯзаҳои CSS-ро фаровон таъин мекунад
Тоҷикӣ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мо барои коркарди сомона, таҳлил ва шахсӣ кардан аз cookie истифода мебарем. Коркарди маълумот мувофиқи Сиёсати махфият сурат мегирад.
ҳамаро қабул кардан танзим кардан рад кардан