[{"data":1,"prerenderedAt":1364},["ShallowReactive",2],{"$fvM_x9EEOvKXVPrxfUs1xn5ddMVKPDWGEq3-5jV3-HXo":3,"$fMMUdSFktwQFqMVGPrTtt3EC5yheBp7PzwIqznamFcMo":64,"$f1Prj1xEczHja_-L7FyIGgRHd5_cSWHo7r6AE5aheAik":67,"$fc0LoAJgqXDLbKKd2JS_NpM4SuzBK8EycUXINSg09CKU":393,"$fM3ea55k6lKMPOTM84llDB26VSQDVVbxiQuSBFQw9P_c":396,"$fI5fDmvm-5tr9wcH0eHaKZa1j3y_FQIQaHHPqbZxAHJE":640,"mdc--dx78o2-key":660,"mdc--vd7uen-key":690,"mdc--8c08kx-key":764,"mdc-f76l7r-key":772,"mdc--ifkxa3-key":780,"mdc-u9oxh0-key":788,"mdc-wprxmx-key":841,"mdc-ks7j2g-key":857,"mdc-7nkuxp-key":986,"mdc--wygsw2-key":1165,"mdc-4ax27h-key":1201},{"content":4,"quizQuestionContent":37,"type":53,"pageMeta":54},[5,9,13,16,20,24,27,31,34],{"id":6,"value":7,"isTypeH1":8},"1891","Влияет ли display:block у body на span в CSS",true,{"id":10,"value":11,"anchor":12,"isTypeH2":8},"4319","Теория: наследование и display","theory-inheritance-and-display",{"id":14,"value":15,"isTypeParagraph":8},"9938","В CSS у каждого свойства есть правило наследования: часть свойств по умолчанию передаётся от родителя к потомкам (например, `color`), а часть — нет (например, многие свойства, влияющие на тип и поведение CSS-бокса).  \nСвойство `display` относится к тем, которые **не наследуются**: если родителю задано `display: block`, это не означает, что дочерние элементы возьмут то же значение.  \nЕсли у элемента (например, у `span`) не задан `display`, он использует собственное значение из каскада/начального значения/стилей браузера, а не «копирует» `display` родителя.",{"id":17,"description":18,"titleAlert":19,"isTypeAlertWarning":8},"677","Распространённая путаница: «родитель блочный» ≠ «все потомки автоматически блочные». Блочность родителя не превращает `span` в блочный элемент без отдельного правила.",null,{"id":21,"value":22,"anchor":23,"isTypeH2":8},"4320","Разбор данного HTML","analysis-of-given-html",{"id":25,"value":26,"isTypeParagraph":8},"9939","Имеется разметка:\n```\n\u003Chtml>\n  \u003Chead>\n    \u003Ctitle>CSS test 2\u003C/title>\n  \u003C/head>\n  \u003Cbody style=\"color: red; font-weight: bold; display: block; background: url('bg.jpg');\">\n    \u003Cdiv>\n      Some test text\n      \u003Cdiv>\n        Lorem ipsum etc..\n        \u003Cspan>\n          One more dummy text\n        \u003C/span>\n      \u003C/div>\n    \u003C/div>\n  \u003C/body>\n\u003C/html>\n```\n\n`display: block` у `body` влияет на отображение самого `body` (то, как он формирует свой бокс и участвует в форматировании страницы).  \n`span` при этом остаётся со своим типом отображения (обычно inline), потому что значение `display` от `body` к нему не передаётся по наследованию.  \nЧтобы `span` стал блочным, правило с `display` должно примениться **к самому `span`** (напрямую или через селектор).\n\nУпрощённая схема идеи:\n```\nbody (display: block)  --x-->  div (display: своё)\n                         |\n                         +----> span (display: своё)\n```\n\nЗначок `x` означает: по наследованию значение `display` не передаётся.",{"id":28,"value":29,"anchor":30,"isTypeH2":8},"4321","Примеры, которые снимают вопрос","examples-that-clarify",{"id":32,"value":33,"isTypeParagraph":8},"9940","Пример A: значение `display` у `body` не делает `span` блочным:\n\n```\nbody { display: block; }\n```\n\nПример B: `span` становится блочным только при явном правиле для `span`:\n\n```\nbody { display: block; }\nspan { display: block; }\n```\n\nПример C: если требуется «взять значение как у родителя», это делается явно на самом элементе через `inherit`:\n\n```\nspan { display: inherit; }\n```\n\nТаблица для запоминания:\n\n| Свойство | Наследуется по умолчанию | Практический смысл |\n|---|---|---|\n| `display` | Нет | `display` родителя не меняет `display` потомка автоматически |\n| `color` | Да (типичный пример) | Цвет текста часто переходит к вложенному тексту, если не переопределён |",{"id":35,"value":36,"isTypeParagraph":8},"9941","Итого: правильный вариант — 2) «Не будет», потому что `display` не наследуется, а значит `display: block` у `body` не меняет `span` автоматически.",{"id":38,"options":39,"hint":50,"solution":51,"description":52},"1130",[40,44,47],{"id":41,"label":42,"isCorrect":43},"4653","Будет",false,{"id":45,"label":46,"isCorrect":8},"4654","Не будет",{"id":48,"label":49,"isCorrect":43},"4655","СSS-ошибка","Следует найти в спецификации или справочнике строку вида `Inherited: no` для свойства `display` и сделать вывод: раз оно не наследуется, то `display:block` у `body` не изменит `display` у `span`.","**Правильный ответ: 2** - Не будет\n\n- 2) Не будет — `display` не наследуется, поэтому `display: block` у `body` не меняет `display` у `span`.\n- 1) Будет — `span` станет блочным, потому что `body` задан как `block`.\n- 3) CSS-ошибка — `display: block` у `body` является неверным CSS.\n- 4) Будет, но только у вложенных элементов — у `span` изменится `display` из‑за каскада.\n\n`display` описывает то, каким типом бокса (inline/block и т. п.) становится **сам элемент**, а не то, каким «станут» его потомки автоматически.","Есть код: \n\n```\n\u003Chtml>\n  \u003Chead>\n    \u003Ctitle>CSS test 2\u003C/title>\n  \u003C/head>\n  \u003Cbody style=\"color: red; font-weight: bold; display: block; background: url('bg.jpg');\">\n    \u003Cdiv>\n      Some test text\n      \u003Cdiv>\n        Lorem ipsum etc..\n        \u003Cspan>\n          One more dummy text\n        \u003C/span>\n      \u003C/div>\n    \u003C/div>\n  \u003C/body>\n\u003C/html>\n```\n\nБудет ли display:block у body влиять на span?","quizQuestion",{"title":55,"description":56,"ogTitle":7,"ogDescription":56,"ogImageUrl":57,"canonical":19,"ogLocale":58,"ogSiteName":59,"ogImageType":60,"ogImageWidth":61,"ogImageHeight":62,"ogType":63,"ogUrl":19},"Будет ли display:block у body влиять на span?","Разбор наследования CSS: почему display у body не меняет span, с примерами кода и объяснением по спецификации.","/og-image.png","ru_RU","goodwebjob.ru","image_jpeg","1200","630","article",{"siteName":65,"siteUrl":66},"GOOD WEB JOB!","https://goodwebjob.ru",{"slugs":68},[69,72,75,78,81,84,87,90,93,96,99,102,105,108,111,114,117,120,123,126,129,132,135,138,141,144,147,150,153,156,159,162,165,168,171,174,177,180,183,186,189,192,195,198,201,204,207,210,213,216,219,222,225,228,231,234,237,240,243,246,249,252,255,258,261,264,267,270,273,276,279,282,285,288,291,294,297,300,303,306,309,312,315,318,321,324,327,330,333,336,339,342,345,348,351,354,357,360,363,366,369,372,375,378,381,384,387,390],{"name":70,"value":71},"Теоретические задания","theoretical-tasks",{"name":73,"value":74},"Что вернёт этот код: typeof (function(){})()","what-this-code-will-return-typeof-function",{"name":76,"value":77},"С чего начать?","where-to-begin",{"name":79,"value":80},"Почему опасно писать прямо в прототипы базовых типов?","why-is-it-dangerous-to-write-directly-to-the-prototypes-of-basic-types",{"name":82,"value":83},"Backend","backend",{"name":85,"value":86},"Frontend","frontend",{"name":88,"value":89},"Какие логические значения в console.log будут получены?","prototype-what-logical-values-will-be-received-in-console-log",{"name":91,"value":92},"Нечётные числа должны отсортироваться по возрастанию, а чётные должны остаться на своих местах","odd-numbers-should-be-sorted-in-ascending-order-and-even-numbers-should-remain-in-their-original-positions",{"name":94,"value":95}," Найти в массиве неповторяющиеся числа","find-non-repeating-numbers-in-an-array",{"name":97,"value":98},"arr.push(0) повлияет на массив так же, как если бы мы выполнили...","arr-push-0-will-affect-the-array-in-the-same-way-as-if-we-performed",{"name":100,"value":101},"Дана строка: 'one.two.three.four.five'. Необходимо из строки сделать вложенный объект","the-string-one-two-three-four-five-is-given-it-is-necessary-to-make-a-nested-object-out-of-the-string",{"name":103,"value":104},"Реализовать функцию, похоже как в Jquery","implement-a-function-similar-to-jquery",{"name":106,"value":107},"Для каждого вложенного объекта нужно добавить свойство level, которое равняется числу - номер вложенности","for-each-nested-object-you-need-to-add-the-level-property-which-is-equal-to-a-number-the-nesting-number",{"name":109,"value":110},"Какое значение выведет консоль с object.property?","what-value-will-the-console-output-with-object-property",{"name":112,"value":113},"Что выведется в console.log([arr[0](), arr[0]()])?","what-will-be-displayed-in-console-log-arr-0-arr-0",{"name":115,"value":116},"Вернуть массив от 1 до n, где числа, кратные 3, заменены на 'fizz', кратные 5 - на 'buzz', а кратные и 3, и 5 одновременно - на 'fizzbuzz'","returns-an-array-from-1-to-n-replacing-numbers-that-are-multiples-of-3-with-fizz-numbers-that-are-multiples-of-5-with-buzz-and-numbers-that-are-multiples-of-both-3-and-5-with-fizzbuzz",{"name":118,"value":119},"Необходимо проверить, являются ли две строки анаграммами друг друга","checks-whether-two-strings-are-anagrams-of-each-other",{"name":121,"value":122},"Определить, является ли слово палиндромом","determines-whether-a-word-is-a-palindrome",{"name":124,"value":125},"Есть массив, в котором лежат объекты с датами, необходимо отсортировать даты по возрастанию","there-is-an-array-containing-objects-with-dates-that-need-to-be-sorted-by-date",{"name":127,"value":128},"Реализовать функцию, принимающую аргументы \"*\", \"1\", \"b\", \"1c\" и возвращающую строку \"1*b*1c\"","implement-a-function-that-accepts-arguments-1-b-1c-and-the-return-string-1-b-1c",{"name":130,"value":131},"Дано дерево (вложенный объект), надо найти сумму всех вершин","given-a-tree-nested-object-it-is-necessary-to-find-the-sum-of-all-vertices",{"name":133,"value":134},"Для каждой ветви дерева записать номер вложенности данной ветви","for-each-branch-of-the-tree-write-down-the-nesting-number-of-this-branch",{"name":136,"value":137},"Есть слова в массиве, необходимо определить, состоят ли они из одних и тех же букв","there-are-words-in-the-array-it-is-necessary-to-determine-whether-they-consist-of-the-same-letters",{"name":139,"value":140},"Числа от 1 до 100 находятся в массиве, они хаотично перемешанные, но в нём не хватает одного числа из этой последовательности. Необходимо найти его","the-numbers-from-1-to-100-are-in-the-array-they-are-randomly-mixed-but-it-lacks-one-number-from-this-sequence-it-is-necessary-to-find-him",{"name":142,"value":143},"Есть строка, состоящая из разных скобок, необходимо проверить, закрыты ли все","there-is-a-string-consisting-of-different-brackets-it-is-necessary-to-check-whether-all-are-closed",{"name":145,"value":146},"Напишите функцию, который сделает из массива объект","write-a-function-that-will-make-an-object-out-of-an-array",{"name":148,"value":149},"Что выведет console.log в результате выполнения цикла while?","what-will-console-log-output-as-a-result-of-executing-the-while-loop",{"name":151,"value":152},"Есть функция и объект. Напишите все известные вам способы, чтобы вывести в консоли значение x из объекта, используя функцию","there-is-a-function-and-an-object-write-all-the-ways-you-know-to-output-the-value-of-x-from-an-object-in-the-console-using-the-function",{"name":154,"value":155},"Что выведет консоль в случае присвоения свойства массиву по строковому отрицательному индексу?","what-will-the-console-display-if-a-property-is-assigned-to-an-array-using-a-negative-string-index",{"name":157,"value":158},"Что выведет консоль в случае удаления элемента массива с помощью оператора delete?","what-will-the-console-output-if-an-array-element-is-deleted-using-the-delete-operator",{"name":160,"value":161},"Уникализация значений в массиве","unifying-values-in-an-array",{"name":163,"value":164},"«Расплющивание» массива","flattening-the-array",{"name":166,"value":167},"Что вернёт метод book.getUpperName()?","what-will-the-book-get-upper-name-method-return",{"name":169,"value":170},"Сжатие строк","string-compression",{"name":172,"value":173},"Что выведет консоль в случае присвоения свойства массиву по строковому положительному индексу?","what-will-the-console-display-if-a-property-is-assigned-to-an-array-using-a-positive-string-index",{"name":175,"value":176},"Что получится в результате передачи объекта как аргумента в функцию и выполнения кода?","what-will-happen-when-an-object-is-passed-as-an-argument-to-a-function-and-the-code-is-executed",{"name":178,"value":179},"Как браузер после ввода домена понимает, откуда брать сайт?","how-does-the-browser-know-where-to-get-the-website-after-entering-the-domain",{"name":181,"value":182},"Как домен попадает в DNS в таблицу соответствия: домен – ip","how-does-a-domain-get-into-the-dns-mapping-table-domain-ip",{"name":184,"value":185},"Как браузер решает, какое соединение ему открывать, TCP или UDP?","how-does-a-browser-decide-whether-to-open-a-tcp-or-udp-connection",{"name":187,"value":188},"Ключевые отличия TCP и UDP","key-differences-between-tcp-and-udp",{"name":190,"value":191},"\"TCP/IP\" - кем является TCP, а кем IP в данном случае?","tcp-ip-who-is-tcp-and-who-is-ip-in-this-case",{"name":193,"value":194},"Что такое HTTP и из чего состоит?","what-is-http-and-what-does-it-consist-of",{"name":196,"value":197},"Что такое заголовки в HTTP и зачем они нужны?","what-are-http-headers-and-why-do-we-need-them",{"name":199,"value":200},"Что такое параметры в HTTP?","what-are-http-parameters",{"name":202,"value":203},"Где находится HTML-код в структуре HTTP-ответа?","where-is-the-html-code-located-in-the-http-response-structure",{"name":205,"value":206},"Что такое HTML?","what-is-html",{"name":208,"value":209},"Чем отличаются 1.0, 1.1, 2.0, 3.0 версии HTTP?","what-are-the-differences-between-http-versions-1-0-1-1-2-0-and-3-0",{"name":211,"value":212},"Пользователь авторизован на сайте. Как сервер узнает об этом с последующими другими заходами, что «я – авторизованный пользователь»?","the-user-is-logged-in-on-the-website-how-does-the-server-know-that-i-am-an-authorized-user-when-the-user-logs-in-again",{"name":214,"value":215},"Что такое cookie?","what-is-a-cookie",{"name":217,"value":218},"Кто является инициатором записи cookie в браузере?","who-initiates-the-cookie-recording-in-the-browser",{"name":220,"value":221},"Есть ли возможность с клиента (с браузера) управлять cookie?","is-it-possible-to-manage-cookies-from-the-client-browser",{"name":223,"value":224},"Лайвкодинг","livecoding",{"name":226,"value":227},"Что вернёт следующий код? Object.create(null).hasOwnProperty('toString')","what-will-the-following-code-return-object-create-null-has-own-property-to-string",{"name":229,"value":230},"Всё, что идет по HTTPS – оно защищено?","is-everything-that-goes-through-https-secure",{"name":232,"value":233},"Все данные зашифрованы, используется https. Хакер взламывает dns и делает подмену одного ip на другой, на фишинговый сайт. В этом случае, злоумышленник может получить данные (логин \\ пароль)?","all-data-is-encrypted-https-is-used-let-s-assume-a-hacker-hacks-the-dns-and-makes-a-substitution-of-one-ip-for-another-a-phishing-site",{"name":235,"value":236},"Есть веб-приложение. Помимо HTTP, какие протоколы того же уровня (Application Layer) можно дополнительно использовать в веб-приложении в браузере?","there-is-a-web-application-in-addition-to-http-what-other-protocols-of-the-same-level-application-layer-can-be-used-in-the-web-application-in-browser",{"name":238,"value":239},"Как браузер парсит JavaScript и изображения при рендеринге?","how-the-browser-parses-javascript-and-images-when-rendering",{"name":241,"value":242},"Что происходит, когда HTTP прислал HTML? Что браузер дальше делает c HTML с учетом того, что она валидная?","what-happens-when-http-sends-html-what-does-the-browser-do-with-this-html-given-that-it-is-valid",{"name":244,"value":245},"Что в браузере блокирует рендеринг страницы?","what-is-blocking-the-page-rendering-in-the-browser",{"name":247,"value":248},"Что такое DOM в браузере? Что такое CSSOM?","what-is-dom-in-a-browser-what-is-cssom",{"name":250,"value":251},"Что является узлами в DOM?","what-are-nodes-in-the-dom",{"name":253,"value":254},"Из чего состоит CSSOM?","what-does-cssom-consist-of",{"name":256,"value":257},"Дан HTML-код. Какой будет цвет у текста «Some dummy text»?","the-html-code-is-given-what-will-be-the-color-of-the-some-dummy-text",{"name":259,"value":260},"Есть шаблон HTML и CSS кода. Какой будет цвет у текста «Таким образом, постоянное»?","there-is-a-template-for-html-and-css-code-what-color-will-the-text-thus-constant-have",{"name":262,"value":263},"Есть шаблон вложенного HTML кода. Какой будет цвет у текста «One more dummy text»?","there-is-a-template-for-embedded-html-code-what-will-be-the-color-of-the-one-more-dummy-text",{"name":265,"value":266},"Есть шаблон вложенного HTML кода. Будет ли display:block у body влиять на span?","there-is-a-template-for-embedded-html-code-will-there-be-a-display-does-bodys-block-affect-span",{"name":268,"value":269},"Есть HTML код. Будет ли font-weight на span влиять?","there-is-an-html-code-will-font-weight-affect-span",{"name":271,"value":272},"Flexbox и Grid, чем отличаются друг от друга?","what-are-the-differences-between-flexbox-and-grid",{"name":274,"value":275},"Заменяют ли Flexbox и Grid друг друга?","do-flexbox-and-grid-replace-each-other",{"name":277,"value":278},"Есть CSS и JS анимация. Какая между ними разница, что быстрее, что более удобно?","there-are-css-and-js-animations-what-is-the-difference-between-them-and-which-is-faster-and-more-convenient",{"name":280,"value":281},"Сборник задач","tasks",{"name":283,"value":284},"Какие способы объявления функции есть в JavaScript?","what-are-the-ways-to-declare-a-function-in-javascript",{"name":286,"value":287},"Что такое this в JavaScript?","what-is-this-in-javascript",{"name":289,"value":290},"Что такое Event Loop, как работает?","what-is-an-event-loop-and-how-does-it-work",{"name":292,"value":293},"Что будет, если вызвать typeof на необъявленной переменной?","what-happens-if-you-call-typeof-on-an-undeclared-variable",{"name":295,"value":296},"Что показывает оператор typeof в JavaScript?","what-does-the-typeof-operator-show-in-javascript",{"name":298,"value":299},"Какие типы данных существует в JavaScript?","what-types-of-data-exist-in-javascript",{"name":301,"value":302},"Какую структуру использовать для хранения упорядоченного списка строк в JavaScript?","what-is-the-best-structure-to-use-for-storing-an-ordered-list-of-strings-in-javascript",{"name":304,"value":305},"Что вернет typeof для массива?","what-will-typeof-return-for-an-array",{"name":307,"value":308},"Почему оператор typeof, применённый к массиву, возвращает объект?","why-does-the-typeof-operator-applied-to-an-array-return-an-object",{"name":310,"value":311},"Если нужно хранить список уникальных строк, какую структуру данных выбрать?","if-you-need-to-store-a-list-of-unique-strings-which-data-structure-should-i-choose",{"name":313,"value":314},"Что возвращает typeof для new Set в JavaScript?","what-does-typeof-return-for-new-set-in-javascript",{"name":316,"value":317},"Для чего нужен React, какие он решает проблемы?","what-is-react-used-for-and-what-problems-does-it-solve",{"name":319,"value":320},"Если убрать в React VDOM/Fiber, и вручную изменять DOM, разве это не оптимально?","if-you-remove-the-vdom-fiber-in-react-and-manually-change-the-dom-isn-t-that-optimal",{"name":322,"value":323},"Есть блок кода. Что в реальном DOM изменится после нажатия на кнопку?","there-is-a-block-of-code-what-changes-in-the-real-dom-after-clicking-the-button",{"name":325,"value":326},"Есть код, в котором список и кнопка. Что в реальном DOM изменится после нажатия на кнопку?","there-is-a-code-in-which-there-is-a-list-and-a-button-what-will-change-in-the-real-dom-after-clicking-on-the-button",{"name":328,"value":329},"Зачем нужен Redux (Mobx/Effector)? Зачем нужен менеджер состояния? Какие проблемы решает?","why-do-we-need-redux-mobx-effector-why-do-we-need-a-state-manager-what-problems-does-it-solve",{"name":331,"value":332},"Как диагностировать и исправить нежелательное изменение цвета фона по клику на кнопку, если исходный код сайта запутан и недоступен для прямого чтения?","how-can-diagnose-and-fix-unwanted-background-color-changes-when-clicking-on-a-button-if-the-source-code-of-the-site-is-confusing-and-inaccessible-to-direct-reading",{"name":334,"value":335},"Разрабатывал, взял закоммитил, запушил. Оказалось, что запушил не в ту ветку, точнее, коммит не в ту ветку. Какие действия?","developed-it-committed-it-and-launched-it-it-turned-out-that-i-had-pushed-it-to-the-wrong-branch-or-rather-the-commit-was-in-the-wrong-branch-what-actions",{"name":337,"value":338},"В git есть несколько вариантов слияния веток, какие? Чем отличаются?","git-has-several-options-for-merging-branches-which-ones-how-are-they-different",{"name":340,"value":341},"Какие существуют стратегии ветвления для работы команды? Что это такое?","what-are-the-branching-strategies-for-the-team-what-is-it",{"name":343,"value":344},"По каким характеристикам, ревьюер понимает, что данный код - хороший, а этот код - плохой?","how-does-a-reviewer-know-which-code-is-good-and-which-code-is-bad",{"name":346,"value":347},"Дан фрагмент bash-скрипта: cd ~; mkdir foo... Что в нем происходит?","here-is-a-fragment-of-a-bash-script-cd-mkdir-foo-what-is-happening-in-this-script",{"name":349,"value":350},"Дан фрагмент bash-скрипта: target=$(ps -Af | grep $1 | head -n 1)...","here-is-a-fragment-of-a-bash-script-target-ps-af-grep-1-head-n-1",{"name":352,"value":353},"Что такое алгоритмическая сложность?","what-is-algorithmic-complexity",{"name":355,"value":356},"Какая алгоритмическая сложность у \"быстрой сортировки\"?","what-is-the-algorithmic-complexity-of-quick-sort",{"name":358,"value":359},"Почему в JavaScript два объекта с одинаковым содержимым при сравнении возвращают false?","why-do-two-objects-with-the-same-content-return-false-when-compared-in-javascript",{"name":361,"value":362},"Каким способом может выполняться авторизация пользователя на сайте?","how-can-a-user-be-authorized-on-a-website",{"name":364,"value":365},"В чем разница между микро- и макро-тасками в JavaScript?","what-is-the-difference-between-micro-and-macro-tasks-in-javascript",{"name":367,"value":368},"В комнате три человека. Какова вероятность того, что хотя бы двое из них одного пола? То есть два и более.","there-are-three-people-in-the-room-what-is-the-probability-that-at-least-two-of-them-are-of-the-same-sex-that-is-two-or-more",{"name":370,"value":371},"Есть монета. Ее подбрасывают пять раз подряд. Каждый раз записывается, что выпало - орел или решка. Сколько разных последовательностей орлов и решек может при этом получиться?","there-is-a-coin-it-is-tossed-five-times-in-a-row-each-time-it-is-recorded-whether-it-lands-on-heads-or-tails-how-many-different-sequences-of-heads-and-tails-can-be-obtained",{"name":373,"value":374},"Как гарантированно найти лёгкую фальшивую монету среди 8 за минимальное число взвешиваний на чашечных весах?","how-can-you-guarantee-to-find-an-easy-fake-coin-among-8-in-the-minimum-number-of-weighings-on-a-balance-scale",{"name":376,"value":377},"Подготовка к тех.интервью","technical-interview",{"name":379,"value":380},"Верно ли утверждение, что злоумышленник, контролирующий роутер и прослушивающий трафик, может получить логины и пароли от сайтов, на которые заходит клиент?","is-it-true-that-an-attacker-who-controls-a-router-and-listens-to-traffic-can-obtain-logins-and-passwords-from-websites-that-a-client-visits",{"name":382,"value":383},"Что такое DNS, как DNS находит нужный IP-адрес?","what-is-dns-and-how-does-dns-find-the-correct-ip-address",{"name":385,"value":386},"Переменные объявлены следующим образом: a=3; b=«hello»;. Укажите правильное утверждение","variables-are-declared-as-follows-specify-the-correct-statement",{"name":388,"value":389},"Какой механизм лежит в основе оптимизации обновлений DOM в React?","what-is-the-underlying-mechanism-for-optimizing-dom-updates-in-react",{"name":391,"value":392},"Что мешает организовать централизованное состояние без менеджера состояния? Если организовать состояние механизмами реакта: контекстом, стейтом, в чем проблема? Что менеджеры состояния привносят?","what-prevents-you-from-organizing-a-centralized-state-without-a-state-manager-if-you-organize-the-state-using-react-context-and-state-mechanisms-what-is-the-problem-what-do-state-managers-add",[394],{"label":376,"slug":377,"to":395},"/technical-interview/where-to-begin",{"navigationList":397,"navigationSublist":403},[398,400],{"path":395,"isActive":43,"name":76,"icon":399,"isNavbarMobileDisabled":8},"material-symbols:visibility-outline-rounded",{"path":401,"isActive":8,"name":280,"icon":402,"isNavbarMobileDisabled":43},"/technical-interview/tasks","material-symbols:task-outline",[404,411,430,439,444,539,556,563,568,611,626,631],{"title":405,"list":406,"isOpened":43},"Bash",[407,409],{"name":346,"path":408,"isActive":43},"/technical-interview/tasks/here-is-a-fragment-of-a-bash-script-cd-mkdir-foo-what-is-happening-in-this-script",{"name":349,"path":410,"isActive":43},"/technical-interview/tasks/here-is-a-fragment-of-a-bash-script-target-ps-af-grep-1-head-n-1",{"title":412,"list":413,"isOpened":43},"CSS",[414,416,418,420,422,424,426,428],{"name":256,"path":415,"isActive":43},"/technical-interview/tasks/the-html-code-is-given-what-will-be-the-color-of-the-some-dummy-text",{"name":259,"path":417,"isActive":43},"/technical-interview/tasks/there-is-a-template-for-html-and-css-code-what-color-will-the-text-thus-constant-have",{"name":262,"path":419,"isActive":43},"/technical-interview/tasks/there-is-a-template-for-embedded-html-code-what-will-be-the-color-of-the-one-more-dummy-text",{"name":265,"path":421,"isActive":43},"/technical-interview/tasks/there-is-a-template-for-embedded-html-code-will-there-be-a-display-does-bodys-block-affect-span",{"name":268,"path":423,"isActive":43},"/technical-interview/tasks/there-is-an-html-code-will-font-weight-affect-span",{"name":271,"path":425,"isActive":43},"/technical-interview/tasks/what-are-the-differences-between-flexbox-and-grid",{"name":274,"path":427,"isActive":43},"/technical-interview/tasks/do-flexbox-and-grid-replace-each-other",{"name":277,"path":429,"isActive":43},"/technical-interview/tasks/there-are-css-and-js-animations-what-is-the-difference-between-them-and-which-is-faster-and-more-convenient",{"title":431,"list":432,"isOpened":43},"Git",[433,435,437],{"name":334,"path":434,"isActive":43},"/technical-interview/tasks/developed-it-committed-it-and-launched-it-it-turned-out-that-i-had-pushed-it-to-the-wrong-branch-or-rather-the-commit-was-in-the-wrong-branch-what-actions",{"name":337,"path":436,"isActive":43},"/technical-interview/tasks/git-has-several-options-for-merging-branches-which-ones-how-are-they-different",{"name":340,"path":438,"isActive":43},"/technical-interview/tasks/what-are-the-branching-strategies-for-the-team-what-is-it",{"title":440,"list":441,"isOpened":43},"HTML",[442],{"name":205,"path":443,"isActive":43},"/technical-interview/tasks/what-is-html",{"title":445,"list":446,"isOpened":43},"JavaScript",[447,449,451,453,455,457,459,461,463,465,467,469,471,473,475,477,479,481,483,485,487,489,491,493,495,497,499,501,503,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537],{"name":88,"path":448,"isActive":43},"/technical-interview/tasks/prototype-what-logical-values-will-be-received-in-console-log",{"name":79,"path":450,"isActive":43},"/technical-interview/tasks/why-is-it-dangerous-to-write-directly-to-the-prototypes-of-basic-types",{"name":226,"path":452,"isActive":43},"/technical-interview/tasks/what-will-the-following-code-return-object-create-null-has-own-property-to-string",{"name":109,"path":454,"isActive":43},"/technical-interview/tasks/what-value-will-the-console-output-with-object-property",{"name":112,"path":456,"isActive":43},"/technical-interview/tasks/what-will-be-displayed-in-console-log-arr-0-arr-0",{"name":148,"path":458,"isActive":43},"/technical-interview/tasks/what-will-console-log-output-as-a-result-of-executing-the-while-loop",{"name":151,"path":460,"isActive":43},"/technical-interview/tasks/there-is-a-function-and-an-object-write-all-the-ways-you-know-to-output-the-value-of-x-from-an-object-in-the-console-using-the-function",{"name":166,"path":462,"isActive":43},"/technical-interview/tasks/what-will-the-book-get-upper-name-method-return",{"name":385,"path":464,"isActive":43},"/technical-interview/tasks/variables-are-declared-as-follows-specify-the-correct-statement",{"name":172,"path":466,"isActive":43},"/technical-interview/tasks/what-will-the-console-display-if-a-property-is-assigned-to-an-array-using-a-positive-string-index",{"name":154,"path":468,"isActive":43},"/technical-interview/tasks/what-will-the-console-display-if-a-property-is-assigned-to-an-array-using-a-negative-string-index",{"name":157,"path":470,"isActive":43},"/technical-interview/tasks/what-will-the-console-output-if-an-array-element-is-deleted-using-the-delete-operator",{"name":73,"path":472,"isActive":43},"/technical-interview/tasks/what-this-code-will-return-typeof-function",{"name":175,"path":474,"isActive":43},"/technical-interview/tasks/what-will-happen-when-an-object-is-passed-as-an-argument-to-a-function-and-the-code-is-executed",{"name":283,"path":476,"isActive":43},"/technical-interview/tasks/what-are-the-ways-to-declare-a-function-in-javascript",{"name":286,"path":478,"isActive":43},"/technical-interview/tasks/what-is-this-in-javascript",{"name":289,"path":480,"isActive":43},"/technical-interview/tasks/what-is-an-event-loop-and-how-does-it-work",{"name":292,"path":482,"isActive":43},"/technical-interview/tasks/what-happens-if-you-call-typeof-on-an-undeclared-variable",{"name":295,"path":484,"isActive":43},"/technical-interview/tasks/what-does-the-typeof-operator-show-in-javascript",{"name":298,"path":486,"isActive":43},"/technical-interview/tasks/what-types-of-data-exist-in-javascript",{"name":301,"path":488,"isActive":43},"/technical-interview/tasks/what-is-the-best-structure-to-use-for-storing-an-ordered-list-of-strings-in-javascript",{"name":304,"path":490,"isActive":43},"/technical-interview/tasks/what-will-typeof-return-for-an-array",{"name":307,"path":492,"isActive":43},"/technical-interview/tasks/why-does-the-typeof-operator-applied-to-an-array-return-an-object",{"name":310,"path":494,"isActive":43},"/technical-interview/tasks/if-you-need-to-store-a-list-of-unique-strings-which-data-structure-should-i-choose",{"name":313,"path":496,"isActive":43},"/technical-interview/tasks/what-does-typeof-return-for-new-set-in-javascript",{"name":358,"path":498,"isActive":43},"/technical-interview/tasks/why-do-two-objects-with-the-same-content-return-false-when-compared-in-javascript",{"name":364,"path":500,"isActive":43},"/technical-interview/tasks/what-is-the-difference-between-micro-and-macro-tasks-in-javascript",{"name":97,"path":502,"isActive":43},"/technical-interview/tasks/arr-push-0-will-affect-the-array-in-the-same-way-as-if-we-performed",{"name":115,"path":504,"isActive":43},"/technical-interview/tasks/returns-an-array-from-1-to-n-replacing-numbers-that-are-multiples-of-3-with-fizz-numbers-that-are-multiples-of-5-with-buzz-and-numbers-that-are-multiples-of-both-3-and-5-with-fizzbuzz",{"name":100,"path":506,"isActive":43},"/technical-interview/tasks/the-string-one-two-three-four-five-is-given-it-is-necessary-to-make-a-nested-object-out-of-the-string",{"name":130,"path":508,"isActive":43},"/technical-interview/tasks/given-a-tree-nested-object-it-is-necessary-to-find-the-sum-of-all-vertices",{"name":106,"path":510,"isActive":43},"/technical-interview/tasks/for-each-nested-object-you-need-to-add-the-level-property-which-is-equal-to-a-number-the-nesting-number",{"name":133,"path":512,"isActive":43},"/technical-interview/tasks/for-each-branch-of-the-tree-write-down-the-nesting-number-of-this-branch",{"name":124,"path":514,"isActive":43},"/technical-interview/tasks/there-is-an-array-containing-objects-with-dates-that-need-to-be-sorted-by-date",{"name":136,"path":516,"isActive":43},"/technical-interview/tasks/there-are-words-in-the-array-it-is-necessary-to-determine-whether-they-consist-of-the-same-letters",{"name":142,"path":518,"isActive":43},"/technical-interview/tasks/there-is-a-string-consisting-of-different-brackets-it-is-necessary-to-check-whether-all-are-closed",{"name":94,"path":520,"isActive":43},"/technical-interview/tasks/find-non-repeating-numbers-in-an-array",{"name":145,"path":522,"isActive":43},"/technical-interview/tasks/write-a-function-that-will-make-an-object-out-of-an-array",{"name":118,"path":524,"isActive":43},"/technical-interview/tasks/checks-whether-two-strings-are-anagrams-of-each-other",{"name":91,"path":526,"isActive":43},"/technical-interview/tasks/odd-numbers-should-be-sorted-in-ascending-order-and-even-numbers-should-remain-in-their-original-positions",{"name":121,"path":528,"isActive":43},"/technical-interview/tasks/determines-whether-a-word-is-a-palindrome",{"name":163,"path":530,"isActive":43},"/technical-interview/tasks/flattening-the-array",{"name":127,"path":532,"isActive":43},"/technical-interview/tasks/implement-a-function-that-accepts-arguments-1-b-1c-and-the-return-string-1-b-1c",{"name":169,"path":534,"isActive":43},"/technical-interview/tasks/string-compression",{"name":160,"path":536,"isActive":43},"/technical-interview/tasks/unifying-values-in-an-array",{"name":139,"path":538,"isActive":43},"/technical-interview/tasks/the-numbers-from-1-to-100-are-in-the-array-they-are-randomly-mixed-but-it-lacks-one-number-from-this-sequence-it-is-necessary-to-find-him",{"title":540,"list":541,"isOpened":43},"React",[542,544,546,548,550,552,554],{"name":316,"path":543,"isActive":43},"/technical-interview/tasks/what-is-react-used-for-and-what-problems-does-it-solve",{"name":388,"path":545,"isActive":43},"/technical-interview/tasks/what-is-the-underlying-mechanism-for-optimizing-dom-updates-in-react",{"name":319,"path":547,"isActive":43},"/technical-interview/tasks/if-you-remove-the-vdom-fiber-in-react-and-manually-change-the-dom-isn-t-that-optimal",{"name":322,"path":549,"isActive":43},"/technical-interview/tasks/there-is-a-block-of-code-what-changes-in-the-real-dom-after-clicking-the-button",{"name":325,"path":551,"isActive":43},"/technical-interview/tasks/there-is-a-code-in-which-there-is-a-list-and-a-button-what-will-change-in-the-real-dom-after-clicking-on-the-button",{"name":328,"path":553,"isActive":43},"/technical-interview/tasks/why-do-we-need-redux-mobx-effector-why-do-we-need-a-state-manager-what-problems-does-it-solve",{"name":391,"path":555,"isActive":43},"/technical-interview/tasks/what-prevents-you-from-organizing-a-centralized-state-without-a-state-manager-if-you-organize-the-state-using-react-context-and-state-mechanisms-what-is-the-problem-what-do-state-managers-add",{"title":557,"list":558,"isOpened":43},"Алгоритмы",[559,561],{"name":352,"path":560,"isActive":43},"/technical-interview/tasks/what-is-algorithmic-complexity",{"name":355,"path":562,"isActive":43},"/technical-interview/tasks/what-is-the-algorithmic-complexity-of-quick-sort",{"title":564,"list":565,"isOpened":43},"Дебаггинг",[566],{"name":331,"path":567,"isActive":43},"/technical-interview/tasks/how-can-diagnose-and-fix-unwanted-background-color-changes-when-clicking-on-a-button-if-the-source-code-of-the-site-is-confusing-and-inaccessible-to-direct-reading",{"title":569,"list":570,"isOpened":43},"Компьютерные сети",[571,573,575,577,579,581,583,585,587,589,591,593,595,597,599,601,603,605,607,609],{"name":178,"path":572,"isActive":43},"/technical-interview/tasks/how-does-the-browser-know-where-to-get-the-website-after-entering-the-domain",{"name":382,"path":574,"isActive":43},"/technical-interview/tasks/what-is-dns-and-how-does-dns-find-the-correct-ip-address",{"name":181,"path":576,"isActive":43},"/technical-interview/tasks/how-does-a-domain-get-into-the-dns-mapping-table-domain-ip",{"name":184,"path":578,"isActive":43},"/technical-interview/tasks/how-does-a-browser-decide-whether-to-open-a-tcp-or-udp-connection",{"name":187,"path":580,"isActive":43},"/technical-interview/tasks/key-differences-between-tcp-and-udp",{"name":190,"path":582,"isActive":43},"/technical-interview/tasks/tcp-ip-who-is-tcp-and-who-is-ip-in-this-case",{"name":193,"path":584,"isActive":43},"/technical-interview/tasks/what-is-http-and-what-does-it-consist-of",{"name":196,"path":586,"isActive":43},"/technical-interview/tasks/what-are-http-headers-and-why-do-we-need-them",{"name":199,"path":588,"isActive":43},"/technical-interview/tasks/what-are-http-parameters",{"name":202,"path":590,"isActive":43},"/technical-interview/tasks/where-is-the-html-code-located-in-the-http-response-structure",{"name":208,"path":592,"isActive":43},"/technical-interview/tasks/what-are-the-differences-between-http-versions-1-0-1-1-2-0-and-3-0",{"name":211,"path":594,"isActive":43},"/technical-interview/tasks/the-user-is-logged-in-on-the-website-how-does-the-server-know-that-i-am-an-authorized-user-when-the-user-logs-in-again",{"name":214,"path":596,"isActive":43},"/technical-interview/tasks/what-is-a-cookie",{"name":217,"path":598,"isActive":43},"/technical-interview/tasks/who-initiates-the-cookie-recording-in-the-browser",{"name":220,"path":600,"isActive":43},"/technical-interview/tasks/is-it-possible-to-manage-cookies-from-the-client-browser",{"name":379,"path":602,"isActive":43},"/technical-interview/tasks/is-it-true-that-an-attacker-who-controls-a-router-and-listens-to-traffic-can-obtain-logins-and-passwords-from-websites-that-a-client-visits",{"name":229,"path":604,"isActive":43},"/technical-interview/tasks/is-everything-that-goes-through-https-secure",{"name":232,"path":606,"isActive":43},"/technical-interview/tasks/all-data-is-encrypted-https-is-used-let-s-assume-a-hacker-hacks-the-dns-and-makes-a-substitution-of-one-ip-for-another-a-phishing-site",{"name":235,"path":608,"isActive":43},"/technical-interview/tasks/there-is-a-web-application-in-addition-to-http-what-other-protocols-of-the-same-level-application-layer-can-be-used-in-the-web-application-in-browser",{"name":361,"path":610,"isActive":43},"/technical-interview/tasks/how-can-a-user-be-authorized-on-a-website",{"title":612,"list":613,"isOpened":43},"Отрисовка в браузере",[614,616,618,620,622,624],{"name":241,"path":615,"isActive":43},"/technical-interview/tasks/what-happens-when-http-sends-html-what-does-the-browser-do-with-this-html-given-that-it-is-valid",{"name":238,"path":617,"isActive":43},"/technical-interview/tasks/how-the-browser-parses-javascript-and-images-when-rendering",{"name":244,"path":619,"isActive":43},"/technical-interview/tasks/what-is-blocking-the-page-rendering-in-the-browser",{"name":247,"path":621,"isActive":43},"/technical-interview/tasks/what-is-dom-in-a-browser-what-is-cssom",{"name":250,"path":623,"isActive":43},"/technical-interview/tasks/what-are-nodes-in-the-dom",{"name":253,"path":625,"isActive":43},"/technical-interview/tasks/what-does-cssom-consist-of",{"title":627,"list":628,"isOpened":43},"Ревью кода",[629],{"name":343,"path":630,"isActive":43},"/technical-interview/tasks/how-does-a-reviewer-know-which-code-is-good-and-which-code-is-bad",{"title":632,"list":633,"isOpened":43},"Теория вероятности",[634,636,638],{"name":367,"path":635,"isActive":43},"/technical-interview/tasks/there-are-three-people-in-the-room-what-is-the-probability-that-at-least-two-of-them-are-of-the-same-sex-that-is-two-or-more",{"name":370,"path":637,"isActive":43},"/technical-interview/tasks/there-is-a-coin-it-is-tossed-five-times-in-a-row-each-time-it-is-recorded-whether-it-lands-on-heads-or-tails-how-many-different-sequences-of-heads-and-tails-can-be-obtained",{"name":373,"path":639,"isActive":43},"/technical-interview/tasks/how-can-you-guarantee-to-find-an-easy-fake-coin-among-8-in-the-minimum-number-of-weighings-on-a-balance-scale",{"cooperation":641,"copyright":644,"reportError":645,"socialNetwork":647},{"link":642,"title":643},"https://t.me/baurinanton","Сотрудничество","© “GOOD WEB JOB!”",{"label":646,"link":642},"Сообщить об ошибке",{"label":648,"socialNetworkList":649},"Мы в соцсетях:",[650,653,656],{"icon":19,"link":651,"title":652},"https://max.ru/u/f9LHodD0cOKMaukdnnahTeL5pwvjrPfUaZ4S8_1rsNy9I9qsmc9Ar3kP_y8","Max",{"icon":654,"link":642,"title":655},"ic:baseline-telegram","Telegram",{"icon":657,"link":658,"title":659},"ri:vk-fill","https://vk.com/baurinanton","VK",{"data":661,"body":662},{},{"type":663,"children":664},"root",[665,673,686],{"type":666,"tag":667,"props":668,"children":669},"element","p",{},[670],{"type":671,"value":672},"text","Есть код:",{"type":666,"tag":674,"props":675,"children":679},"pre",{"className":676,"code":678,"language":671},[677],"language-text","\u003Chtml>\n  \u003Chead>\n    \u003Ctitle>CSS test 2\u003C/title>\n  \u003C/head>\n  \u003Cbody style=\"color: red; font-weight: bold; display: block; background: url('bg.jpg');\">\n    \u003Cdiv>\n      Some test text\n      \u003Cdiv>\n        Lorem ipsum etc..\n        \u003Cspan>\n          One more dummy text\n        \u003C/span>\n      \u003C/div>\n    \u003C/div>\n  \u003C/body>\n\u003C/html>\n",[680],{"type":666,"tag":681,"props":682,"children":684},"code",{"__ignoreMap":683},"",[685],{"type":671,"value":678},{"type":666,"tag":667,"props":687,"children":688},{},[689],{"type":671,"value":55},{"data":691,"body":692},{},{"type":663,"children":693},[694],{"type":666,"tag":667,"props":695,"children":696},{},[697,699,705,707,711,713,719,721,727,729,735,737,740,742,748,750,755,757,762],{"type":671,"value":698},"В CSS у каждого свойства есть правило наследования: часть свойств по умолчанию передаётся от родителя к потомкам (например, ",{"type":666,"tag":681,"props":700,"children":702},{"className":701},[],[703],{"type":671,"value":704},"color",{"type":671,"value":706},"), а часть — нет (например, многие свойства, влияющие на тип и поведение CSS-бокса).",{"type":666,"tag":708,"props":709,"children":710},"br",{},[],{"type":671,"value":712},"\nСвойство ",{"type":666,"tag":681,"props":714,"children":716},{"className":715},[],[717],{"type":671,"value":718},"display",{"type":671,"value":720}," относится к тем, которые ",{"type":666,"tag":722,"props":723,"children":724},"strong",{},[725],{"type":671,"value":726},"не наследуются",{"type":671,"value":728},": если родителю задано ",{"type":666,"tag":681,"props":730,"children":732},{"className":731},[],[733],{"type":671,"value":734},"display: block",{"type":671,"value":736},", это не означает, что дочерние элементы возьмут то же значение.",{"type":666,"tag":708,"props":738,"children":739},{},[],{"type":671,"value":741},"\nЕсли у элемента (например, у ",{"type":666,"tag":681,"props":743,"children":745},{"className":744},[],[746],{"type":671,"value":747},"span",{"type":671,"value":749},") не задан ",{"type":666,"tag":681,"props":751,"children":753},{"className":752},[],[754],{"type":671,"value":718},{"type":671,"value":756},", он использует собственное значение из каскада/начального значения/стилей браузера, а не «копирует» ",{"type":666,"tag":681,"props":758,"children":760},{"className":759},[],[761],{"type":671,"value":718},{"type":671,"value":763}," родителя.",{"data":765,"body":766},{},{"type":663,"children":767},[768],{"type":666,"tag":667,"props":769,"children":770},{},[771],{"type":671,"value":42},{"data":773,"body":774},{},{"type":663,"children":775},[776],{"type":666,"tag":667,"props":777,"children":778},{},[779],{"type":671,"value":46},{"data":781,"body":782},{},{"type":663,"children":783},[784],{"type":666,"tag":667,"props":785,"children":786},{},[787],{"type":671,"value":49},{"data":789,"body":790},{},{"type":663,"children":791},[792],{"type":666,"tag":667,"props":793,"children":794},{},[795,797,803,805,810,812,818,820,826,828,833,834,839],{"type":671,"value":796},"Следует найти в спецификации или справочнике строку вида ",{"type":666,"tag":681,"props":798,"children":800},{"className":799},[],[801],{"type":671,"value":802},"Inherited: no",{"type":671,"value":804}," для свойства ",{"type":666,"tag":681,"props":806,"children":808},{"className":807},[],[809],{"type":671,"value":718},{"type":671,"value":811}," и сделать вывод: раз оно не наследуется, то ",{"type":666,"tag":681,"props":813,"children":815},{"className":814},[],[816],{"type":671,"value":817},"display:block",{"type":671,"value":819}," у ",{"type":666,"tag":681,"props":821,"children":823},{"className":822},[],[824],{"type":671,"value":825},"body",{"type":671,"value":827}," не изменит ",{"type":666,"tag":681,"props":829,"children":831},{"className":830},[],[832],{"type":671,"value":718},{"type":671,"value":819},{"type":666,"tag":681,"props":835,"children":837},{"className":836},[],[838],{"type":671,"value":747},{"type":671,"value":840},".",{"data":842,"body":843},{},{"type":663,"children":844},[845],{"type":666,"tag":667,"props":846,"children":847},{},[848,850,855],{"type":671,"value":849},"Распространённая путаница: «родитель блочный» ≠ «все потомки автоматически блочные». Блочность родителя не превращает ",{"type":666,"tag":681,"props":851,"children":853},{"className":852},[],[854],{"type":671,"value":747},{"type":671,"value":856}," в блочный элемент без отдельного правила.",{"data":858,"body":859},{},{"type":663,"children":860},[861,866,874,952,957,966],{"type":666,"tag":667,"props":862,"children":863},{},[864],{"type":671,"value":865},"Имеется разметка:",{"type":666,"tag":674,"props":867,"children":869},{"className":868,"code":678,"language":671},[677],[870],{"type":666,"tag":681,"props":871,"children":872},{"__ignoreMap":683},[873],{"type":671,"value":678},{"type":666,"tag":667,"props":875,"children":876},{},[877,882,883,888,890,895,897,900,905,907,912,914,919,921,924,926,931,933,938,940,950],{"type":666,"tag":681,"props":878,"children":880},{"className":879},[],[881],{"type":671,"value":734},{"type":671,"value":819},{"type":666,"tag":681,"props":884,"children":886},{"className":885},[],[887],{"type":671,"value":825},{"type":671,"value":889}," влияет на отображение самого ",{"type":666,"tag":681,"props":891,"children":893},{"className":892},[],[894],{"type":671,"value":825},{"type":671,"value":896}," (то, как он формирует свой бокс и участвует в форматировании страницы).",{"type":666,"tag":708,"props":898,"children":899},{},[],{"type":666,"tag":681,"props":901,"children":903},{"className":902},[],[904],{"type":671,"value":747},{"type":671,"value":906}," при этом остаётся со своим типом отображения (обычно inline), потому что значение ",{"type":666,"tag":681,"props":908,"children":910},{"className":909},[],[911],{"type":671,"value":718},{"type":671,"value":913}," от ",{"type":666,"tag":681,"props":915,"children":917},{"className":916},[],[918],{"type":671,"value":825},{"type":671,"value":920}," к нему не передаётся по наследованию.",{"type":666,"tag":708,"props":922,"children":923},{},[],{"type":671,"value":925},"\nЧтобы ",{"type":666,"tag":681,"props":927,"children":929},{"className":928},[],[930],{"type":671,"value":747},{"type":671,"value":932}," стал блочным, правило с ",{"type":666,"tag":681,"props":934,"children":936},{"className":935},[],[937],{"type":671,"value":718},{"type":671,"value":939}," должно примениться ",{"type":666,"tag":722,"props":941,"children":942},{},[943,945],{"type":671,"value":944},"к самому ",{"type":666,"tag":681,"props":946,"children":948},{"className":947},[],[949],{"type":671,"value":747},{"type":671,"value":951}," (напрямую или через селектор).",{"type":666,"tag":667,"props":953,"children":954},{},[955],{"type":671,"value":956},"Упрощённая схема идеи:",{"type":666,"tag":674,"props":958,"children":961},{"className":959,"code":960,"language":671},[677],"body (display: block)  --x-->  div (display: своё)\n                         |\n                         +----> span (display: своё)\n",[962],{"type":666,"tag":681,"props":963,"children":964},{"__ignoreMap":683},[965],{"type":671,"value":960},{"type":666,"tag":667,"props":967,"children":968},{},[969,971,977,979,984],{"type":671,"value":970},"Значок ",{"type":666,"tag":681,"props":972,"children":974},{"className":973},[],[975],{"type":671,"value":976},"x",{"type":671,"value":978}," означает: по наследованию значение ",{"type":666,"tag":681,"props":980,"children":982},{"className":981},[],[983],{"type":671,"value":718},{"type":671,"value":985}," не передаётся.",{"data":987,"body":988},{},{"type":663,"children":989},[990,1015,1024,1043,1052,1064,1073,1078],{"type":666,"tag":667,"props":991,"children":992},{},[993,995,1000,1001,1006,1008,1013],{"type":671,"value":994},"Пример A: значение ",{"type":666,"tag":681,"props":996,"children":998},{"className":997},[],[999],{"type":671,"value":718},{"type":671,"value":819},{"type":666,"tag":681,"props":1002,"children":1004},{"className":1003},[],[1005],{"type":671,"value":825},{"type":671,"value":1007}," не делает ",{"type":666,"tag":681,"props":1009,"children":1011},{"className":1010},[],[1012],{"type":671,"value":747},{"type":671,"value":1014}," блочным:",{"type":666,"tag":674,"props":1016,"children":1019},{"className":1017,"code":1018,"language":671},[677],"body { display: block; }\n",[1020],{"type":666,"tag":681,"props":1021,"children":1022},{"__ignoreMap":683},[1023],{"type":671,"value":1018},{"type":666,"tag":667,"props":1025,"children":1026},{},[1027,1029,1034,1036,1041],{"type":671,"value":1028},"Пример B: ",{"type":666,"tag":681,"props":1030,"children":1032},{"className":1031},[],[1033],{"type":671,"value":747},{"type":671,"value":1035}," становится блочным только при явном правиле для ",{"type":666,"tag":681,"props":1037,"children":1039},{"className":1038},[],[1040],{"type":671,"value":747},{"type":671,"value":1042},":",{"type":666,"tag":674,"props":1044,"children":1047},{"className":1045,"code":1046,"language":671},[677],"body { display: block; }\nspan { display: block; }\n",[1048],{"type":666,"tag":681,"props":1049,"children":1050},{"__ignoreMap":683},[1051],{"type":671,"value":1046},{"type":666,"tag":667,"props":1053,"children":1054},{},[1055,1057,1063],{"type":671,"value":1056},"Пример C: если требуется «взять значение как у родителя», это делается явно на самом элементе через ",{"type":666,"tag":681,"props":1058,"children":1060},{"className":1059},[],[1061],{"type":671,"value":1062},"inherit",{"type":671,"value":1042},{"type":666,"tag":674,"props":1065,"children":1068},{"className":1066,"code":1067,"language":671},[677],"span { display: inherit; }\n",[1069],{"type":666,"tag":681,"props":1070,"children":1071},{"__ignoreMap":683},[1072],{"type":671,"value":1067},{"type":666,"tag":667,"props":1074,"children":1075},{},[1076],{"type":671,"value":1077},"Таблица для запоминания:",{"type":666,"tag":1079,"props":1080,"children":1081},"table",{},[1082,1106],{"type":666,"tag":1083,"props":1084,"children":1085},"thead",{},[1086],{"type":666,"tag":1087,"props":1088,"children":1089},"tr",{},[1090,1096,1101],{"type":666,"tag":1091,"props":1092,"children":1093},"th",{},[1094],{"type":671,"value":1095},"Свойство",{"type":666,"tag":1091,"props":1097,"children":1098},{},[1099],{"type":671,"value":1100},"Наследуется по умолчанию",{"type":666,"tag":1091,"props":1102,"children":1103},{},[1104],{"type":671,"value":1105},"Практический смысл",{"type":666,"tag":1107,"props":1108,"children":1109},"tbody",{},[1110,1144],{"type":666,"tag":1087,"props":1111,"children":1112},{},[1113,1122,1127],{"type":666,"tag":1114,"props":1115,"children":1116},"td",{},[1117],{"type":666,"tag":681,"props":1118,"children":1120},{"className":1119},[],[1121],{"type":671,"value":718},{"type":666,"tag":1114,"props":1123,"children":1124},{},[1125],{"type":671,"value":1126},"Нет",{"type":666,"tag":1114,"props":1128,"children":1129},{},[1130,1135,1137,1142],{"type":666,"tag":681,"props":1131,"children":1133},{"className":1132},[],[1134],{"type":671,"value":718},{"type":671,"value":1136}," родителя не меняет ",{"type":666,"tag":681,"props":1138,"children":1140},{"className":1139},[],[1141],{"type":671,"value":718},{"type":671,"value":1143}," потомка автоматически",{"type":666,"tag":1087,"props":1145,"children":1146},{},[1147,1155,1160],{"type":666,"tag":1114,"props":1148,"children":1149},{},[1150],{"type":666,"tag":681,"props":1151,"children":1153},{"className":1152},[],[1154],{"type":671,"value":704},{"type":666,"tag":1114,"props":1156,"children":1157},{},[1158],{"type":671,"value":1159},"Да (типичный пример)",{"type":666,"tag":1114,"props":1161,"children":1162},{},[1163],{"type":671,"value":1164},"Цвет текста часто переходит к вложенному тексту, если не переопределён",{"data":1166,"body":1167},{},{"type":663,"children":1168},[1169],{"type":666,"tag":667,"props":1170,"children":1171},{},[1172,1174,1179,1181,1186,1187,1192,1194,1199],{"type":671,"value":1173},"Итого: правильный вариант — 2) «Не будет», потому что ",{"type":666,"tag":681,"props":1175,"children":1177},{"className":1176},[],[1178],{"type":671,"value":718},{"type":671,"value":1180}," не наследуется, а значит ",{"type":666,"tag":681,"props":1182,"children":1184},{"className":1183},[],[1185],{"type":671,"value":734},{"type":671,"value":819},{"type":666,"tag":681,"props":1188,"children":1190},{"className":1189},[],[1191],{"type":671,"value":825},{"type":671,"value":1193}," не меняет ",{"type":666,"tag":681,"props":1195,"children":1197},{"className":1196},[],[1198],{"type":671,"value":747},{"type":671,"value":1200}," автоматически.",{"data":1202,"body":1203},{},{"type":663,"children":1204},[1205,1215,1347],{"type":666,"tag":667,"props":1206,"children":1207},{},[1208,1213],{"type":666,"tag":722,"props":1209,"children":1210},{},[1211],{"type":671,"value":1212},"Правильный ответ: 2",{"type":671,"value":1214}," - Не будет",{"type":666,"tag":1216,"props":1217,"children":1218},"ul",{},[1219,1264,1296,1321],{"type":666,"tag":1220,"props":1221,"children":1222},"li",{},[1223],{"type":666,"tag":1224,"props":1225,"children":1227},"ol",{"start":1226},2,[1228],{"type":666,"tag":1220,"props":1229,"children":1230},{},[1231,1233,1238,1240,1245,1246,1251,1252,1257,1258,1263],{"type":671,"value":1232},"Не будет — ",{"type":666,"tag":681,"props":1234,"children":1236},{"className":1235},[],[1237],{"type":671,"value":718},{"type":671,"value":1239}," не наследуется, поэтому ",{"type":666,"tag":681,"props":1241,"children":1243},{"className":1242},[],[1244],{"type":671,"value":734},{"type":671,"value":819},{"type":666,"tag":681,"props":1247,"children":1249},{"className":1248},[],[1250],{"type":671,"value":825},{"type":671,"value":1193},{"type":666,"tag":681,"props":1253,"children":1255},{"className":1254},[],[1256],{"type":671,"value":718},{"type":671,"value":819},{"type":666,"tag":681,"props":1259,"children":1261},{"className":1260},[],[1262],{"type":671,"value":747},{"type":671,"value":840},{"type":666,"tag":1220,"props":1265,"children":1266},{},[1267],{"type":666,"tag":1224,"props":1268,"children":1269},{},[1270],{"type":666,"tag":1220,"props":1271,"children":1272},{},[1273,1275,1280,1282,1287,1289,1295],{"type":671,"value":1274},"Будет — ",{"type":666,"tag":681,"props":1276,"children":1278},{"className":1277},[],[1279],{"type":671,"value":747},{"type":671,"value":1281}," станет блочным, потому что ",{"type":666,"tag":681,"props":1283,"children":1285},{"className":1284},[],[1286],{"type":671,"value":825},{"type":671,"value":1288}," задан как ",{"type":666,"tag":681,"props":1290,"children":1292},{"className":1291},[],[1293],{"type":671,"value":1294},"block",{"type":671,"value":840},{"type":666,"tag":1220,"props":1297,"children":1298},{},[1299],{"type":666,"tag":1224,"props":1300,"children":1302},{"start":1301},3,[1303],{"type":666,"tag":1220,"props":1304,"children":1305},{},[1306,1308,1313,1314,1319],{"type":671,"value":1307},"CSS-ошибка — ",{"type":666,"tag":681,"props":1309,"children":1311},{"className":1310},[],[1312],{"type":671,"value":734},{"type":671,"value":819},{"type":666,"tag":681,"props":1315,"children":1317},{"className":1316},[],[1318],{"type":671,"value":825},{"type":671,"value":1320}," является неверным CSS.",{"type":666,"tag":1220,"props":1322,"children":1323},{},[1324],{"type":666,"tag":1224,"props":1325,"children":1327},{"start":1326},4,[1328],{"type":666,"tag":1220,"props":1329,"children":1330},{},[1331,1333,1338,1340,1345],{"type":671,"value":1332},"Будет, но только у вложенных элементов — у ",{"type":666,"tag":681,"props":1334,"children":1336},{"className":1335},[],[1337],{"type":671,"value":747},{"type":671,"value":1339}," изменится ",{"type":666,"tag":681,"props":1341,"children":1343},{"className":1342},[],[1344],{"type":671,"value":718},{"type":671,"value":1346}," из‑за каскада.",{"type":666,"tag":667,"props":1348,"children":1349},{},[1350,1355,1357,1362],{"type":666,"tag":681,"props":1351,"children":1353},{"className":1352},[],[1354],{"type":671,"value":718},{"type":671,"value":1356}," описывает то, каким типом бокса (inline/block и т. п.) становится ",{"type":666,"tag":722,"props":1358,"children":1359},{},[1360],{"type":671,"value":1361},"сам элемент",{"type":671,"value":1363},", а не то, каким «станут» его потомки автоматически.",1775735655417]