aboutsummaryrefslogtreecommitdiff
path: root/files/ru
diff options
context:
space:
mode:
Diffstat (limited to 'files/ru')
-rw-r--r--files/ru/conflicting/web/javascript/guide/introduction/index.html2
-rw-r--r--files/ru/conflicting/web/javascript/reference/global_objects/proxy/proxy/index.html2
-rw-r--r--files/ru/games/index.html6
-rw-r--r--files/ru/games/introduction/index.html2
-rw-r--r--files/ru/games/techniques/3d_on_the_web/building_up_a_basic_demo_with_three.js/index.html2
-rw-r--r--files/ru/games/techniques/controls_gamepad_api/index.html4
-rw-r--r--files/ru/games/tutorials/2d_breakout_game_pure_javascript/finishing_up/index.html2
-rw-r--r--files/ru/glossary/character_encoding/index.html2
-rw-r--r--files/ru/glossary/php/index.html2
-rw-r--r--files/ru/glossary/primitive/index.html4
-rw-r--r--files/ru/glossary/semantics/index.html2
-rw-r--r--files/ru/learn/common_questions/how_does_the_internet_work/index.html2
-rw-r--r--files/ru/learn/common_questions/set_up_a_local_testing_server/index.html2
-rw-r--r--files/ru/learn/css/building_blocks/debugging_css/index.html4
-rw-r--r--files/ru/learn/css/building_blocks/images_media_form_elements/index.html4
-rw-r--r--files/ru/learn/css/building_blocks/styling_tables/index.html2
-rw-r--r--files/ru/learn/css/building_blocks/values_and_units/index.html2
-rw-r--r--files/ru/learn/css/css_layout/floats/index.html4
-rw-r--r--files/ru/learn/css/css_layout/grids/index.html6
-rw-r--r--files/ru/learn/css/css_layout/introduction/index.html6
-rw-r--r--files/ru/learn/css/css_layout/positioning/index.html2
-rw-r--r--files/ru/learn/css/css_layout/practical_positioning_examples/index.html2
-rw-r--r--files/ru/learn/css/css_layout/responsive_design/index.html2
-rw-r--r--files/ru/learn/css/first_steps/index.html2
-rw-r--r--files/ru/learn/css/styling_text/styling_links/index.html6
-rw-r--r--files/ru/learn/css/styling_text/styling_lists/index.html6
-rw-r--r--files/ru/learn/css/styling_text/web_fonts/index.html2
-rw-r--r--files/ru/learn/forms/form_validation/index.html2
-rw-r--r--files/ru/learn/forms/how_to_build_custom_form_controls/index.html4
-rw-r--r--files/ru/learn/forms/sending_and_retrieving_form_data/index.html2
-rw-r--r--files/ru/learn/forms/sending_forms_through_javascript/index.html2
-rw-r--r--files/ru/learn/getting_started_with_the_web/css_basics/index.html2
-rw-r--r--files/ru/learn/getting_started_with_the_web/dealing_with_files/index.html2
-rw-r--r--files/ru/learn/getting_started_with_the_web/html_basics/index.html2
-rw-r--r--files/ru/learn/getting_started_with_the_web/javascript_basics/index.html2
-rw-r--r--files/ru/learn/html/introduction_to_html/advanced_text_formatting/index.html2
-rw-r--r--files/ru/learn/html/introduction_to_html/html_text_fundamentals/index.html2
-rw-r--r--files/ru/learn/html/introduction_to_html/the_head_metadata_in_html/index.html2
-rw-r--r--files/ru/learn/html/multimedia_and_embedding/adding_vector_graphics_to_the_web/index.html2
-rw-r--r--files/ru/learn/html/multimedia_and_embedding/index.html2
-rw-r--r--files/ru/learn/html/multimedia_and_embedding/other_embedding_technologies/index.html4
-rw-r--r--files/ru/learn/html/multimedia_and_embedding/responsive_images/index.html2
-rw-r--r--files/ru/learn/html/tables/advanced/index.html4
-rw-r--r--files/ru/learn/html/tables/basics/index.html6
-rw-r--r--files/ru/learn/javascript/asynchronous/async_await/index.html2
-rw-r--r--files/ru/learn/javascript/asynchronous/timeouts_and_intervals/index.html4
-rw-r--r--files/ru/learn/javascript/building_blocks/events/index.html4
-rw-r--r--files/ru/learn/javascript/client-side_web_apis/fetching_data/index.html2
-rw-r--r--files/ru/learn/javascript/first_steps/a_first_splash/index.html2
-rw-r--r--files/ru/learn/javascript/first_steps/math/index.html4
-rw-r--r--files/ru/learn/javascript/first_steps/variables/index.html6
-rw-r--r--files/ru/learn/javascript/first_steps/what_is_javascript/index.html4
-rw-r--r--files/ru/learn/javascript/objects/object-oriented_js/index.html2
-rw-r--r--files/ru/learn/server-side/django/admin_site/index.html4
-rw-r--r--files/ru/learn/server-side/django/authentication/index.html6
-rw-r--r--files/ru/learn/server-side/django/deployment/index.html4
-rw-r--r--files/ru/learn/server-side/django/development_environment/index.html4
-rw-r--r--files/ru/learn/server-side/django/forms/index.html4
-rw-r--r--files/ru/learn/server-side/django/generic_views/index.html2
-rw-r--r--files/ru/learn/server-side/django/home_page/index.html2
-rw-r--r--files/ru/learn/server-side/django/models/index.html2
-rw-r--r--files/ru/learn/server-side/django/sessions/index.html4
-rw-r--r--files/ru/learn/server-side/django/testing/index.html2
-rw-r--r--files/ru/learn/server-side/express_nodejs/forms/delete_author_form/index.html4
-rw-r--r--files/ru/learn/server-side/express_nodejs/index.html2
-rw-r--r--files/ru/learn/server-side/express_nodejs/routes/index.html4
-rw-r--r--files/ru/learn/server-side/express_nodejs/skeleton_website/index.html2
-rw-r--r--files/ru/learn/server-side/index.html4
-rw-r--r--files/ru/learn/tools_and_testing/cross_browser_testing/introduction/index.html2
-rw-r--r--files/ru/mozilla/add-ons/webextensions/chrome_incompatibilities/index.html2
-rw-r--r--files/ru/mozilla/add-ons/webextensions/user_interface/browser_action/index.html2
-rw-r--r--files/ru/mozilla/add-ons/webextensions/your_second_webextension/index.html2
-rw-r--r--files/ru/mozilla/firefox/index.html2
-rw-r--r--files/ru/orphaned/web/html/element/element/index.html2
-rw-r--r--files/ru/orphaned/web/security/information_security_basics/index.html2
-rw-r--r--files/ru/orphaned/настройка_среды_разработки_расширений/index.html2
-rw-r--r--files/ru/orphaned/создание_расширения/index.html2
-rw-r--r--files/ru/tools/page_inspector/how_to/edit_css_shapes/index.html2
-rw-r--r--files/ru/web/accessibility/aria/index.html2
-rw-r--r--files/ru/web/api/analysernode/index.html2
-rw-r--r--files/ru/web/api/attr/index.html14
-rw-r--r--files/ru/web/api/body/arraybuffer/index.html2
-rw-r--r--files/ru/web/api/canvas_api/tutorial/basic_usage/index.html2
-rw-r--r--files/ru/web/api/canvas_api/tutorial/pixel_manipulation_with_canvas/index.html2
-rw-r--r--files/ru/web/api/canvas_api/tutorial/using_images/index.html2
-rw-r--r--files/ru/web/api/canvasrenderingcontext2d/drawimage/index.html8
-rw-r--r--files/ru/web/api/canvasrenderingcontext2d/fill/index.html2
-rw-r--r--files/ru/web/api/canvasrenderingcontext2d/index.html4
-rw-r--r--files/ru/web/api/canvasrenderingcontext2d/linecap/index.html2
-rw-r--r--files/ru/web/api/datatransfer/index.html2
-rw-r--r--files/ru/web/api/document/write/index.html2
-rw-r--r--files/ru/web/api/document_object_model/introduction/index.html2
-rw-r--r--files/ru/web/api/element/index.html2
-rw-r--r--files/ru/web/api/element/setattribute/index.html2
-rw-r--r--files/ru/web/api/event/preventdefault/index.html2
-rw-r--r--files/ru/web/api/eventtarget/addeventlistener/index.html2
-rw-r--r--files/ru/web/api/fetch_api/using_fetch/index.html2
-rw-r--r--files/ru/web/api/html_drag_and_drop_api/drag_operations/index.html2
-rw-r--r--files/ru/web/api/htmlaudioelement/index.html2
-rw-r--r--files/ru/web/api/htmlcanvaselement/getcontext/index.html2
-rw-r--r--files/ru/web/api/htmlmediaelement/index.html2
-rw-r--r--files/ru/web/api/intersection_observer_api/index.html2
-rw-r--r--files/ru/web/api/keyboardevent/key/key_values/index.html6
-rw-r--r--files/ru/web/api/mutationobserver/index.html2
-rw-r--r--files/ru/web/api/navigator/battery/index.html2
-rw-r--r--files/ru/web/api/node/index.html2
-rw-r--r--files/ru/web/api/node/insertbefore/index.html2
-rw-r--r--files/ru/web/api/node/issupported/index.html2
-rw-r--r--files/ru/web/api/node/lookupnamespaceuri/index.html2
-rw-r--r--files/ru/web/api/node/namespaceuri/index.html2
-rw-r--r--files/ru/web/api/node/replacechild/index.html4
-rw-r--r--files/ru/web/api/performance/index.html2
-rw-r--r--files/ru/web/api/pointer_lock_api/index.html2
-rw-r--r--files/ru/web/api/push_api/index.html2
-rw-r--r--files/ru/web/api/rtcpeerconnection/index.html2
-rw-r--r--files/ru/web/api/service_worker_api/using_service_workers/index.html6
-rw-r--r--files/ru/web/api/streams_api/index.html2
-rw-r--r--files/ru/web/api/touch_events/index.html2
-rw-r--r--files/ru/web/api/vrpose/position/index.html2
-rw-r--r--files/ru/web/api/web_audio_api/visualizations_with_web_audio_api/index.html2
-rw-r--r--files/ru/web/api/web_speech_api/using_the_web_speech_api/index.html2
-rw-r--r--files/ru/web/api/webrtc_api/using_data_channels/index.html2
-rw-r--r--files/ru/web/api/webvr_api/index.html2
-rw-r--r--files/ru/web/api/webvr_api/using_the_webvr_api/index.html2
-rw-r--r--files/ru/web/api/window/alert/index.html2
-rw-r--r--files/ru/web/api/window/gamepaddisconnected_event/index.html2
-rw-r--r--files/ru/web/api/window/performance/index.html2
-rw-r--r--files/ru/web/api/window/postmessage/index.html2
-rw-r--r--files/ru/web/api/windoweventhandlers/onpopstate/index.html2
-rw-r--r--files/ru/web/api/xmlhttprequest/send/index.html2
-rw-r--r--files/ru/web/api/xmlhttprequest/using_xmlhttprequest/index.html2
-rw-r--r--files/ru/web/css/@counter-style/additive-symbols/index.html4
-rw-r--r--files/ru/web/css/_doublecolon_first-letter/index.html2
-rw-r--r--files/ru/web/css/_doublecolon_first-line/index.html2
-rw-r--r--files/ru/web/css/color_value/index.html2
-rw-r--r--files/ru/web/css/column-rule-color/index.html2
-rw-r--r--files/ru/web/css/column-rule-style/index.html2
-rw-r--r--files/ru/web/css/column-rule/index.html2
-rw-r--r--files/ru/web/css/css_animations/tips/index.html2
-rw-r--r--files/ru/web/css/css_flexible_box_layout/backwards_compatibility_of_flexbox/index.html2
-rw-r--r--files/ru/web/css/css_grid_layout/layout_using_named_grid_lines/index.html2
-rw-r--r--files/ru/web/css/css_grid_layout/line-based_placement_with_css_grid/index.html2
-rw-r--r--files/ru/web/css/font-variant-ligatures/index.html2
-rw-r--r--files/ru/web/css/hyphens/index.html2
-rw-r--r--files/ru/web/css/min-height/index.html2
-rw-r--r--files/ru/web/css/overflow-block/index.html2
-rw-r--r--files/ru/web/css/radial-gradient()/index.html2
-rw-r--r--files/ru/web/css/repeating-linear-gradient()/index.html2
-rw-r--r--files/ru/web/events/index.html10
-rw-r--r--files/ru/web/guide/ajax/getting_started/index.html4
-rw-r--r--files/ru/web/guide/html/content_categories/index.html2
-rw-r--r--files/ru/web/html/element/body/index.html2
-rw-r--r--files/ru/web/html/element/input/range/index.html2
-rw-r--r--files/ru/web/html/element/link/index.html2
-rw-r--r--files/ru/web/html/element/meta/index.html4
-rw-r--r--files/ru/web/html/element/progress/index.html2
-rw-r--r--files/ru/web/html/element/track/index.html2
-rw-r--r--files/ru/web/html/global_attributes/index.html2
-rw-r--r--files/ru/web/http/cors/errors/corsdidnotsucceed/index.html2
-rw-r--r--files/ru/web/http/csp/index.html2
-rw-r--r--files/ru/web/http/redirections/index.html4
-rw-r--r--files/ru/web/http/status/100/index.html2
-rw-r--r--files/ru/web/javascript/eventloop/index.html2
-rw-r--r--files/ru/web/javascript/guide/details_of_the_object_model/index.html52
-rw-r--r--files/ru/web/javascript/guide/grammar_and_types/index.html2
-rw-r--r--files/ru/web/javascript/guide/numbers_and_dates/index.html2
-rw-r--r--files/ru/web/javascript/guide/working_with_objects/index.html2
-rw-r--r--files/ru/web/javascript/reference/errors/not_defined/index.html2
-rw-r--r--files/ru/web/javascript/reference/errors/unnamed_function_statement/index.html2
-rw-r--r--files/ru/web/javascript/reference/global_objects/promise/all/index.html2
-rw-r--r--files/ru/web/javascript/reference/global_objects/promise/index.html6
-rw-r--r--files/ru/web/javascript/reference/global_objects/promise/reject/index.html2
-rw-r--r--files/ru/web/javascript/reference/global_objects/sharedarraybuffer/index.html2
-rw-r--r--files/ru/web/javascript/reference/lexical_grammar/index.html2
-rw-r--r--files/ru/web/javascript/reference/operators/delete/index.html2
-rw-r--r--files/ru/web/javascript/reference/operators/typeof/index.html2
-rw-r--r--files/ru/web/javascript/reference/statements/async_function/index.html2
-rw-r--r--files/ru/web/javascript/reference/strict_mode/index.html4
-rw-r--r--files/ru/web/mathml/element/merror/index.html2
-rw-r--r--files/ru/web/performance/critical_rendering_path/index.html2
-rw-r--r--files/ru/web/performance/fundamentals/index.html2
-rw-r--r--files/ru/web/performance/how_browsers_work/index.html4
-rw-r--r--files/ru/web/performance/optimizing_startup_performance/index.html4
-rw-r--r--files/ru/web/progressive_web_apps/installable_pwas/index.html2
-rw-r--r--files/ru/web/svg/element/use/index.html2
-rw-r--r--files/ru/web/svg/svg_as_an_image/index.html2
-rw-r--r--files/ru/web/svg/tutorial/basic_transformations/index.html2
-rw-r--r--files/ru/web/svg/tutorial/clipping_and_masking/index.html2
-rw-r--r--files/ru/web/svg/tutorial/fills_and_strokes/index.html2
-rw-r--r--files/ru/web/svg/tutorial/svg_in_html_introduction/index.html2
-rw-r--r--files/ru/web/web_components/index.html2
-rw-r--r--files/ru/webassembly/c_to_wasm/index.html2
-rw-r--r--files/ru/webassembly/exported_functions/index.html2
-rw-r--r--files/ru/webassembly/loading_and_running/index.html2
-rw-r--r--files/ru/webassembly/rust_to_wasm/index.html4
195 files changed, 285 insertions, 285 deletions
diff --git a/files/ru/conflicting/web/javascript/guide/introduction/index.html b/files/ru/conflicting/web/javascript/guide/introduction/index.html
index 155240f7d6..d77cb2c0ec 100644
--- a/files/ru/conflicting/web/javascript/guide/introduction/index.html
+++ b/files/ru/conflicting/web/javascript/guide/introduction/index.html
@@ -121,7 +121,7 @@ original_slug: Web/JavaScript/Guide/About
<h2 id="Советы_изучающим_JavaScript">Советы изучающим JavaScript</h2>
-<p>Начать изучать JavaScript очень легко: все что вам нужно - это современный веб браузер. Этот учебник включает описание некоторых особенностей JavaScript, которые доступны только в самых последних версиях Firefox (и других браузерах основанных на движке Gecko), так что лучше всего воспользоваться самой последней версией Firefox.</p>
+<p>Начать изучать JavaScript очень легко: всё что вам нужно - это современный веб браузер. Этот учебник включает описание некоторых особенностей JavaScript, которые доступны только в самых последних версиях Firefox (и других браузерах основанных на движке Gecko), так что лучше всего воспользоваться самой последней версией Firefox.</p>
<h3 id="Интерактивный_интерпретатор.">Интерактивный интерпретатор.</h3>
diff --git a/files/ru/conflicting/web/javascript/reference/global_objects/proxy/proxy/index.html b/files/ru/conflicting/web/javascript/reference/global_objects/proxy/proxy/index.html
index 59ad23d271..300a6fab10 100644
--- a/files/ru/conflicting/web/javascript/reference/global_objects/proxy/proxy/index.html
+++ b/files/ru/conflicting/web/javascript/reference/global_objects/proxy/proxy/index.html
@@ -70,7 +70,7 @@ original_slug: Web/JavaScript/Reference/Global_Objects/Proxy/handler
<tr>
<td>{{SpecName('ESDraft', '#sec-proxy-object-internal-methods-and-internal-slots', 'Proxy Object Internal Methods and Internal Slots')}}</td>
<td>{{Spec2('ESDraft')}}</td>
- <td>Обработчик <code>enumerate</code> был удален.</td>
+ <td>Обработчик <code>enumerate</code> был удалён.</td>
</tr>
</tbody>
</table>
diff --git a/files/ru/games/index.html b/files/ru/games/index.html
index f049abd074..1465371e3e 100644
--- a/files/ru/games/index.html
+++ b/files/ru/games/index.html
@@ -21,7 +21,7 @@ translation_of: Games
<dt><a href="/en-US/docs/Games/Introduction" title="/en-US/docs/Games/Introduction">Введение в разработку игр для Web</a></dt>
<dd>Ознакомление с технологиями, полезными для разработчиков игр, а также - как начать разработку игр, используя Web-технологии. Эта статья также рассматривает бизнес-кейс для создания web-игр.</dd>
<dt><a href="/en-US/docs/Games/Anatomy_of_a_vIdeo_game">Анатомия видео игр</a></dt>
- <dd>Что такое видео игры на самом деле? Есть определённые вещи, которые являются общими для всех игр (даже если, на первый взгляд, так и не кажется). Данная статья попытается объяснить такие понятия, как основные циклы, в совершенно общем контексте. При этом она все равно соответствует веб-стандартам.</dd>
+ <dd>Что такое видео игры на самом деле? Есть определённые вещи, которые являются общими для всех игр (даже если, на первый взгляд, так и не кажется). Данная статья попытается объяснить такие понятия, как основные циклы, в совершенно общем контексте. При этом она всё равно соответствует веб-стандартам.</dd>
<dt><a href="/en-US/docs/Web/Apps/Developing/Games/Special_considerations">Особые обсуждения для разработчиков игр</a></dt>
<dd><span id="result_box" lang="ru"><span>Эта статья</span> <span>из</span> <span>App</span> <span>Center</span> <span>бегло рассматривает</span> <span>вещи</span><span>, которые необходимо учитывать</span> <span>при попытке</span> <span>создать игру, которая</span> <span>будет работать</span> <span>как открытое</span> <span>веб-приложение</span><span>.</span></span></dd>
</dl>
@@ -30,9 +30,9 @@ translation_of: Games
<dl>
<dt><a href="http://buildnewgames.com/">Создание Новых Игр</a></dt>
- <dd><span id="result_box" lang="ru"><span>Совместный</span> <span>сайт</span> <span>с участием</span> <span>большого количества</span> <span>открытых</span> <span>веб-</span><span>обучающих программ</span> по <span>разработке игр</span><span>.</span> <span>Не</span> <span>очень активно</span> <span>в последнее время,</span> <span>но все же</span> <span>содержит несколько</span> <span>хороших</span> <span>ресурсов</span><span>.</span></span></dd>
+ <dd><span id="result_box" lang="ru"><span>Совместный</span> <span>сайт</span> <span>с участием</span> <span>большого количества</span> <span>открытых</span> <span>веб-</span><span>обучающих программ</span> по <span>разработке игр</span><span>.</span> <span>Не</span> <span>очень активно</span> <span>в последнее время,</span> <span>но всё же</span> <span>содержит несколько</span> <span>хороших</span> <span>ресурсов</span><span>.</span></span></dd>
<dt><a href="http://creativejs.com/">Creative JS</a></dt>
- <dd>Коллекция впечатляющих JavaScript методов и экспериментов, не специфичных для игр, но тем не менее полезных. <span id="result_box" lang="ru"><span>Не</span> <span>очень активно</span> <span>в последнее время,</span> <span>но все же</span> <span>содержит несколько</span> <span>хороших</span> <span>ресурсов</span><span>.</span></span></dd>
+ <dd>Коллекция впечатляющих JavaScript методов и экспериментов, не специфичных для игр, но тем не менее полезных. <span id="result_box" lang="ru"><span>Не</span> <span>очень активно</span> <span>в последнее время,</span> <span>но всё же</span> <span>содержит несколько</span> <span>хороших</span> <span>ресурсов</span><span>.</span></span></dd>
<dt><a href="http://gameprogrammingpatterns.com/">Шаблоны программирования игр</a></dt>
<dd>Онлайн-книга, написанная Bob Nystrom, которая рассказывает о шаблонах программирования в контексте разработки игр с целью помочь разработчикам создавать более эффективный, рациональный код.</dd>
<dt><a href="http://blog.artillery.com/">Artillery blog</a></dt>
diff --git a/files/ru/games/introduction/index.html b/files/ru/games/introduction/index.html
index 088d012235..91f7517e0a 100644
--- a/files/ru/games/introduction/index.html
+++ b/files/ru/games/introduction/index.html
@@ -75,7 +75,7 @@ original_slug: Games/Ввод
<p>6. Вы можете управлять своими отношениями с клиентами более тесно, по-своему. Больше не придётся работать с обратной связью магазина приложений. Взаимодействуйте со своими клиентами так, как вы хотите, без посредника.</p>
-<p>7. Ваши игроки могут играть в вашу игру в любом месте, в любое время. Поскольку Web распространён повсеместно, ваши клиенты могут проверить статус своей игры на своих телефонах, планшетах, домашних ноутбуках, рабочих столах или на чем-либо еще.</p>
+<p>7. Ваши игроки могут играть в вашу игру в любом месте, в любое время. Поскольку Web распространён повсеместно, ваши клиенты могут проверить статус своей игры на своих телефонах, планшетах, домашних ноутбуках, рабочих столах или на чем-либо ещё.</p>
<h2 id="Web-технологии_для_разработчиков_игр">Web-технологии для разработчиков игр</h2>
diff --git a/files/ru/games/techniques/3d_on_the_web/building_up_a_basic_demo_with_three.js/index.html b/files/ru/games/techniques/3d_on_the_web/building_up_a_basic_demo_with_three.js/index.html
index 1df6408271..ce110daaa6 100644
--- a/files/ru/games/techniques/3d_on_the_web/building_up_a_basic_demo_with_three.js/index.html
+++ b/files/ru/games/techniques/3d_on_the_web/building_up_a_basic_demo_with_three.js/index.html
@@ -106,7 +106,7 @@ scene.add(camera);
<h2 id="Отрисовка_сцены">Отрисовка сцены</h2>
-<p>Все уже готово, но мы пока что ничего не видим. Хотя мы настроили рендерер, нам все равно нужно запустить рендеринг. Функция <code>render()</code> выполнит эту работу с небольшой помощью <code><a href="https://wiki.developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame">requestAnimationFrame()</a></code>, которая заставляет сцену постоянно перерисовываться в каждом кадре:</p>
+<p>Всё уже готово, но мы пока что ничего не видим. Хотя мы настроили рендерер, нам всё равно нужно запустить рендеринг. Функция <code>render()</code> выполнит эту работу с небольшой помощью <code><a href="https://wiki.developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame">requestAnimationFrame()</a></code>, которая заставляет сцену постоянно перерисовываться в каждом кадре:</p>
<pre class="brush: js notranslate">function render() {
requestAnimationFrame(render);
diff --git a/files/ru/games/techniques/controls_gamepad_api/index.html b/files/ru/games/techniques/controls_gamepad_api/index.html
index 6f84031d8d..2d4cc54bce 100644
--- a/files/ru/games/techniques/controls_gamepad_api/index.html
+++ b/files/ru/games/techniques/controls_gamepad_api/index.html
@@ -55,7 +55,7 @@ translation_of: Games/Techniques/Controls_Gamepad_API
<p><img alt="Hungry Fridge demo using Gamepad API" src="http://end3r.com/tmp/gamepad/super-turbo.png" style="display: block; height: 333px; margin: 0px auto; width: 500px;"></p>
-<p>Код, описанный ниже, взят из полной версии игры Hungry Fridge, но он почти идентичен демо-версии — единственная разница заключается в том, что полная версия использует переменную turbo, чтобы решить, будет ли игра запущена с использованием режима Super Turbo. Он работает независимо, поэтому его можно включить, даже если геймпад не подключен.</p>
+<p>Код, описанный ниже, взят из полной версии игры Hungry Fridge, но он почти идентичен демо-версии — единственная разница заключается в том, что полная версия использует переменную turbo, чтобы решить, будет ли игра запущена с использованием режима Super Turbo. Он работает независимо, поэтому его можно включить, даже если геймпад не подключён.</p>
<div class="note">
<p><strong>ПРИМЕЧАНИЕ: </strong>время пасхальных яиц: есть скрытая опция для запуска Super Turbo Hungry Fridge на рабочем столе без подключения геймпада — нажмите на значок геймпада в правом верхнем углу экрана. Он запустит игру в режиме Super Turbo, и Вы сможете управлять холодильником с помощью клавиатуры: A и D для поворота башни влево и вправо, W для стрельбы и клавиш со стрелками для перемещения.</p>
@@ -171,7 +171,7 @@ window.addEventListener("gamepaddisconnected", gamepadAPI.disconnect);</code>
},</code>
</pre>
-<p>На каждом кадре, <code>update()</code> сохраняет кнопки, нажатые во время предыдущего кадра, в массиве <code>buttonsCache </code>и берет новые из объекта <code>gamepadAPI.controller</code>. Затем он проходит по кнопкам и осям, чтобы получить их фактические состояния и значения.</p>
+<p>На каждом кадре, <code>update()</code> сохраняет кнопки, нажатые во время предыдущего кадра, в массиве <code>buttonsCache </code>и берёт новые из объекта <code>gamepadAPI.controller</code>. Затем он проходит по кнопкам и осям, чтобы получить их фактические состояния и значения.</p>
<h3 id="Обнаружение_нажатия_кнопок">Обнаружение нажатия кнопок</h3>
diff --git a/files/ru/games/tutorials/2d_breakout_game_pure_javascript/finishing_up/index.html b/files/ru/games/tutorials/2d_breakout_game_pure_javascript/finishing_up/index.html
index 5c09478700..f1ce286e2c 100644
--- a/files/ru/games/tutorials/2d_breakout_game_pure_javascript/finishing_up/index.html
+++ b/files/ru/games/tutorials/2d_breakout_game_pure_javascript/finishing_up/index.html
@@ -19,7 +19,7 @@ original_slug: Games/Tutorials/2D_Breakout_game_pure_JavaScript/Заключен
<p>Это 10-й и заключительный шаг в <a href="https://developer.mozilla.org/en-US/docs/Games/Workflows/Breakout_game_from_scratch">Gamedev Canvas tutorial</a>. Вы можете найти исходный код, как он должен выглядеть, после завершения этого урока в <a href="https://github.com/end3r/Gamedev-Canvas-workshop/blob/gh-pages/lesson10.html">Gamedev-Canvas-workshop/lesson10.html</a>.</p>
</div>
-<p><span class="seoSummary">В любой игре, которую мы пишем, всегда есть место для улучшений. Например, мы можем предложить игроку несколько жизней. Они могут сделать несколько ошибок и все равно закончить игру. Мы также можем улучшить отрисовку кода.</span></p>
+<p><span class="seoSummary">В любой игре, которую мы пишем, всегда есть место для улучшений. Например, мы можем предложить игроку несколько жизней. Они могут сделать несколько ошибок и всё равно закончить игру. Мы также можем улучшить отрисовку кода.</span></p>
<h2 id="Предоставление_игроку_нескольких_жизней">Предоставление игроку нескольких жизней</h2>
diff --git a/files/ru/glossary/character_encoding/index.html b/files/ru/glossary/character_encoding/index.html
index a3d2cc9a96..8232bd931f 100644
--- a/files/ru/glossary/character_encoding/index.html
+++ b/files/ru/glossary/character_encoding/index.html
@@ -15,7 +15,7 @@ original_slug: Словарь/character_encoding
<div class="example">
<pre class="brush: html"><code>&lt;meta charset="utf-8"&gt;</code></pre>
-<p>Это гарантирует, что вы можете использовать символы практически любого человеческого языка в вашем HTML-документе, и они будут отображаться надежно.</p>
+<p>Это гарантирует, что вы можете использовать символы практически любого человеческого языка в вашем HTML-документе, и они будут отображаться надёжно.</p>
</div>
<h2 id="Узнать_больше">Узнать больше</h2>
diff --git a/files/ru/glossary/php/index.html b/files/ru/glossary/php/index.html
index a1db2d08a1..1956c8cbb3 100644
--- a/files/ru/glossary/php/index.html
+++ b/files/ru/glossary/php/index.html
@@ -5,7 +5,7 @@ translation_of: Glossary/PHP
original_slug: Словарь/PHP
---
<dl>
- <dd><acronym title="PHP: Hypertext Preprocessor">PHP</acronym>, расшифровывающийся как "<em>PHP: Hypertext Preprocessor</em>" - «PHP: Препроцессор Гипертекста», является распространённым интерпретируемым языком общего назначения с открытым исходным кодом. PHP создавался специально для ведения web-разработок и код на нем может внедряться непосредственно в HTML-код. Синтаксис языка берет начало из C, Java и Perl, и является лёгким для изучения. Основной целью PHP является предоставление web-разработчикам возможности быстрого создания динамически генерируемых web-страниц, однако область применения PHP не ограничивается только этим.</dd>
+ <dd><acronym title="PHP: Hypertext Preprocessor">PHP</acronym>, расшифровывающийся как "<em>PHP: Hypertext Preprocessor</em>" - «PHP: Препроцессор Гипертекста», является распространённым интерпретируемым языком общего назначения с открытым исходным кодом. PHP создавался специально для ведения web-разработок и код на нем может внедряться непосредственно в HTML-код. Синтаксис языка берёт начало из C, Java и Perl, и является лёгким для изучения. Основной целью PHP является предоставление web-разработчикам возможности быстрого создания динамически генерируемых web-страниц, однако область применения PHP не ограничивается только этим.</dd>
</dl>
<h2 id="Узнать_больше">Узнать больше</h2>
diff --git a/files/ru/glossary/primitive/index.html b/files/ru/glossary/primitive/index.html
index 39f3f3aac6..73761a6add 100644
--- a/files/ru/glossary/primitive/index.html
+++ b/files/ru/glossary/primitive/index.html
@@ -36,7 +36,7 @@ console.log(foo); // ["plugh"]
bar = bar.toUpperCase(); // BAZ
</pre>
-<p><span id="result_box" lang="ru"><span>Примитив может быть заменён, но он не может быть напрямую изменен.</span></span></p>
+<p><span id="result_box" lang="ru"><span>Примитив может быть заменён, но он не может быть напрямую изменён.</span></span></p>
<h2 id="Другой_пример_Step-by-step">Другой пример [ Step-by-step ]</h2>
@@ -71,7 +71,7 @@ console.log(foo); // 5
<ul>
<li>При вызове обеих функций <code>addTwo</code> <code>и addTwo_v2</code>, JavaScript ищет <span class="short_text" id="result_box" lang="ru"><span>значение для идентификатора</span></span> <code>foo</code>. JavaScript <span id="result_box" lang="ru"><span>правильно определяет нашу переменную, созданную с помощью первого оператора</span></span></li>
<li><span id="result_box" lang="ru"><span>После этого JavaScript передаёт найденный аргумент в функцию в качестве параметра</span></span></li>
- <li>Перед выполнением операторов в теле функции, <strong>JavaScript берет исходный переданный аргумент </strong>(который является примитивом) и создаёт его локальную копию. <span id="result_box" lang="ru"><span>Эти копии, существующие только внутри областей функций, доступны через идентификаторы, указанные в определениях функций</span></span> (<code>num</code> для <code>addTwo</code>, <font face="consolas, Liberation Mono, courier, monospace"><span style="background-color: rgba(220, 220, 220, 0.5);">foo</span></font> для <code>addTwo_v2</code>)</li>
+ <li>Перед выполнением операторов в теле функции, <strong>JavaScript берёт исходный переданный аргумент </strong>(который является примитивом) и создаёт его локальную копию. <span id="result_box" lang="ru"><span>Эти копии, существующие только внутри областей функций, доступны через идентификаторы, указанные в определениях функций</span></span> (<code>num</code> для <code>addTwo</code>, <font face="consolas, Liberation Mono, courier, monospace"><span style="background-color: rgba(220, 220, 220, 0.5);">foo</span></font> для <code>addTwo_v2</code>)</li>
<li><span class="short_text" id="result_box" lang="ru"><span>Затем выполняются операторы функций</span></span>:
<ul>
<li>В первой функции был создан локальный аргумент <code>num</code>. <span id="result_box" lang="ru"><span>Мы увеличиваем его значение на 2</span></span> (а не значение исходной переменной <code>foo</code>).</li>
diff --git a/files/ru/glossary/semantics/index.html b/files/ru/glossary/semantics/index.html
index 80e22bc782..09bce0e226 100644
--- a/files/ru/glossary/semantics/index.html
+++ b/files/ru/glossary/semantics/index.html
@@ -35,7 +35,7 @@ original_slug: Словарь/Semantics
<ul>
<li>Поисковые системы будут рассматривать содержимое такой разметки как важные ключевые слова, влияющие на рейтинг страницы в результатах поиска (смотри {{glossary("SEO")}})</li>
<li>Программы для чтения с экрана могут использовать её как указатель, чтобы помочь слабовидящим пользователям ориентироваться на странице</li>
- <li>Среди бесконечных блоков <code>div</code> гораздо проще найти блок семантического кода, чем блок с семантическим классом или классом, принадлежащим пространству имен.</li>
+ <li>Среди бесконечных блоков <code>div</code> гораздо проще найти блок семантического кода, чем блок с семантическим классом или классом, принадлежащим пространству имён.</li>
<li>Указывает разработчику на тип данных, которые будут размещены</li>
<li>Семантическая разметка отражает правильное именование элементов / компонентов</li>
</ul>
diff --git a/files/ru/learn/common_questions/how_does_the_internet_work/index.html b/files/ru/learn/common_questions/how_does_the_internet_work/index.html
index 267946416f..5aa8814771 100644
--- a/files/ru/learn/common_questions/how_does_the_internet_work/index.html
+++ b/files/ru/learn/common_questions/how_does_the_internet_work/index.html
@@ -34,7 +34,7 @@ original_slug: Learn/How_the_Internet_works
<p><strong>Интернет</strong> является основой сети (the Web), технической инфраструктурой, благодаря которой и существует Всемирная Паутина. По своей сути, интернет - очень большая сеть компьютеров, которые могут взаимодействовать друг с другом.</p>
-<p><a href="https://www.wikiwand.com/ru/%D0%98%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82#/.D0.98.D1.81.D1.82.D0.BE.D1.80.D0.B8.D1.8F" rel="external">История интернета не до конца ясна</a>. Проект по созданию интернета был начат в 60-х годах как исследовательский проект при поддержке министерства обороны США, но уже в 80-е годы вырос в сеть, которую поддерживали и развивали множество университетов и частных компаний. Технологии, лежащие в основе интернета, также продолжали развиваться со временем, но основной принцип работы не сильно изменился: Интернет - это способ подключить компьютеры в единую сеть и убедиться, что даже при серьёзных сбоях, они все равно найдут способ связаться друг с другом.</p>
+<p><a href="https://www.wikiwand.com/ru/%D0%98%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82#/.D0.98.D1.81.D1.82.D0.BE.D1.80.D0.B8.D1.8F" rel="external">История интернета не до конца ясна</a>. Проект по созданию интернета был начат в 60-х годах как исследовательский проект при поддержке министерства обороны США, но уже в 80-е годы вырос в сеть, которую поддерживали и развивали множество университетов и частных компаний. Технологии, лежащие в основе интернета, также продолжали развиваться со временем, но основной принцип работы не сильно изменился: Интернет - это способ подключить компьютеры в единую сеть и убедиться, что даже при серьёзных сбоях, они всё равно найдут способ связаться друг с другом.</p>
<h2 id="Активное_изучение">Активное изучение</h2>
diff --git a/files/ru/learn/common_questions/set_up_a_local_testing_server/index.html b/files/ru/learn/common_questions/set_up_a_local_testing_server/index.html
index b83a09368d..7d8aa69e33 100644
--- a/files/ru/learn/common_questions/set_up_a_local_testing_server/index.html
+++ b/files/ru/learn/common_questions/set_up_a_local_testing_server/index.html
@@ -45,7 +45,7 @@ translation_of: Learn/Common_questions/set_up_a_local_testing_server
<ol>
<li>
- <p>Установить Python. Если Вы пользуетесь Linux или Mac OS X, все уже готово в Вашей системе. Если Вы пользователь Windows, Вы можете скачать установочный файл с домашней страницы Python:</p>
+ <p>Установить Python. Если Вы пользуетесь Linux или Mac OS X, всё уже готово в Вашей системе. Если Вы пользователь Windows, Вы можете скачать установочный файл с домашней страницы Python:</p>
<ul>
<li>Зайдите на <a href="https://www.python.org/">python.org</a></li>
diff --git a/files/ru/learn/css/building_blocks/debugging_css/index.html b/files/ru/learn/css/building_blocks/debugging_css/index.html
index 6ba3afd75a..b5fabf7265 100644
--- a/files/ru/learn/css/building_blocks/debugging_css/index.html
+++ b/files/ru/learn/css/building_blocks/debugging_css/index.html
@@ -129,7 +129,7 @@ translation_of: Learn/CSS/Building_blocks/Debugging_CSS
<h3 id="Валидны_ли_ваши_HTML_и_CSS">Валидны ли ваши HTML и CSS?</h3>
-<p>Браузеры ожидают, что CSS и HTML написаны корректно, однако в это же время браузеры очень снисходительны и сделают все чтобы отобразить вашу веб-страницу даже если у вас есть ошибки в разметке и таблице стилей. Если у вас есть ошибки в коде, то браузеру нужно угадать что вы имели в виду, и он может принять решение не такое какое было у вас в голове. И дополнительно, два разных браузера могут решать проблему двумя разными способами. Поэтому хорошим первым шагом является запуск вашего HTML и CSS в валидаторе чтобы выявить и исправить ошибки.</p>
+<p>Браузеры ожидают, что CSS и HTML написаны корректно, однако в это же время браузеры очень снисходительны и сделают всё чтобы отобразить вашу веб-страницу даже если у вас есть ошибки в разметке и таблице стилей. Если у вас есть ошибки в коде, то браузеру нужно угадать что вы имели в виду, и он может принять решение не такое какое было у вас в голове. И дополнительно, два разных браузера могут решать проблему двумя разными способами. Поэтому хорошим первым шагом является запуск вашего HTML и CSS в валидаторе чтобы выявить и исправить ошибки.</p>
<ul>
<li><a href="https://jigsaw.w3.org/css-validator/">CSS Validator</a></li>
@@ -160,7 +160,7 @@ translation_of: Learn/CSS/Building_blocks/Debugging_CSS
<ol>
<li>Если ваша разметка генерируется динамически — например через CMS — сделайте статичную версию вывода, которая показывает проблему. Сайты обмена кодами как <a href="https://codepen.io/">CodePen</a> являются полезными для размещения сокращённых контрольных примеров, так как они доступны онлайн, и вы легко можете поделиться с коллегами. Вы можете начать просматривать страницу во View Source и скопировать HTML в CodePen, затем взять релевантный CSS и JavaScript и включить их тоже. После этого вы можете проверить очевидна ли проблема.</li>
- <li>Если удаление JavaScript не устраняет проблему, то не включайте JavaScript. Если же удаление JavaScript <em>устраняет</em> проблему, тогда удалите столько JavaScript, сколько сможете, оставляя все что вызывает проблему.</li>
+ <li>Если удаление JavaScript не устраняет проблему, то не включайте JavaScript. Если же удаление JavaScript <em>устраняет</em> проблему, тогда удалите столько JavaScript, сколько сможете, оставляя всё что вызывает проблему.</li>
<li>Удалите весь HTML который не влияет на проблему. Удалите компоненты или даже главные элементы макета. Опять же постарайтесь добиться наименьшего количества кода, который все ещё показывает проблему.</li>
<li>Удалите весь CSS который не влияет на проблему.</li>
</ol>
diff --git a/files/ru/learn/css/building_blocks/images_media_form_elements/index.html b/files/ru/learn/css/building_blocks/images_media_form_elements/index.html
index e8ee1914ce..b7f68a3e29 100644
--- a/files/ru/learn/css/building_blocks/images_media_form_elements/index.html
+++ b/files/ru/learn/css/building_blocks/images_media_form_elements/index.html
@@ -78,7 +78,7 @@ translation_of: Learn/CSS/Building_blocks/Images_media_form_elements
<h2 id="Элементы_форм">Элементы форм</h2>
-<p>Элементы форм могут быть сложной проблемой когда дело касается их стилизации в CSS, и <a href="/en-US/docs/Learn/Forms">Web Forms module</a> содержит детальные руководства по хитрым аспектам стилизации элементов форм, которые я не буду представлять здесь в полном объеме. <span class="tlid-translation translation" lang="ru"><span title="">В этом разделе статьи стоит выделить несколько ключевых моментов.</span></span></p>
+<p>Элементы форм могут быть сложной проблемой когда дело касается их стилизации в CSS, и <a href="/en-US/docs/Learn/Forms">Web Forms module</a> содержит детальные руководства по хитрым аспектам стилизации элементов форм, которые я не буду представлять здесь в полном объёме. <span class="tlid-translation translation" lang="ru"><span title="">В этом разделе статьи стоит выделить несколько ключевых моментов.</span></span></p>
<p><span class="tlid-translation translation" lang="ru"><span title="">Многие элементы управления форм добавляются на вашу страницу с помощью элемента</span></span> <code><a href="/en-US/docs/Web/HTML/Element/input">&lt;input&gt;</a></code> — <span class="tlid-translation translation" lang="ru"><span title="">он определяет простые поля формы, такие как ввод текста, и более сложные поля, добавленные в HTML5, такие как средства выбора цвета и даты. Существуют некоторые дополнительные элементы, такие как </span></span><code><a href="/en-US/docs/Web/HTML/Element/textarea">&lt;textarea&gt;</a></code> для ввода многострочного текста, а также элементы которые содержали части маркировки форм, такие как <code><a href="/en-US/docs/Web/HTML/Element/fieldset">&lt;fieldset&gt;</a></code> и <code><a href="/en-US/docs/Web/HTML/Element/legend">&lt;legend&gt;</a></code>.</p>
@@ -93,7 +93,7 @@ translation_of: Learn/CSS/Building_blocks/Images_media_form_elements
<p>{{EmbedGHLiveSample("css-examples/learn/images/form.html", '100%', 1000)}}</p>
<div class="blockIndicator warning">
-<p><strong>Важно: </strong> <span class="tlid-translation translation" lang="ru"><span title="">При изменении стиля элементов формы следует соблюдать осторожность, чтобы убедиться, что для пользователя все ещё очевидно, что они являются элементами форм. Вы можете создать форму ввода без границ и фона, которая практически неотличима от окружающего контента и это может сделать очень сложно распознаваемой, чтобы заполнить ее.</span></span></p>
+<p><strong>Важно: </strong> <span class="tlid-translation translation" lang="ru"><span title="">При изменении стиля элементов формы следует соблюдать осторожность, чтобы убедиться, что для пользователя все ещё очевидно, что они являются элементами форм. Вы можете создать форму ввода без границ и фона, которая практически неотличима от окружающего контента и это может сделать очень сложно распознаваемой, чтобы заполнить её.</span></span></p>
</div>
<p>Как объяснено в уроке <a href="/en-US/docs/Learn/Forms/Styling_web_forms">стилизация форм</a> в части HTML этого курса, <span class="tlid-translation translation" lang="ru"><span title="">многие из более сложных типов ввода определяются операционной системой и не доступны для стилизации. </span></span><span class="tlid-translation translation" lang="ru"><span title="">Поэтому вы всегда должны предполагать, что формы будут выглядеть по-разному для разных пользователей и тестировать сложные формы во многих браузерах.</span></span></p>
diff --git a/files/ru/learn/css/building_blocks/styling_tables/index.html b/files/ru/learn/css/building_blocks/styling_tables/index.html
index cc6475421b..01e3fb5079 100644
--- a/files/ru/learn/css/building_blocks/styling_tables/index.html
+++ b/files/ru/learn/css/building_blocks/styling_tables/index.html
@@ -179,7 +179,7 @@ tfoot th {
<ul>
<li>Мы установили доступный глобально шрифт sans-serif; это вполне стандартный стилистический выбор. Мы установили выбранный нами шрифт для заголовков внутри элементов {{htmlelement("thead")}} и {{htmlelement("tfoot")}}, который подходит нам по тематике панков.</li>
- <li>Мы добавили немного {{cssxref("letter-spacing")}} в заголовках и ячейках которым необходимо добавить читаемости. Опять же это основной стилистический прием.</li>
+ <li>Мы добавили немного {{cssxref("letter-spacing")}} в заголовках и ячейках которым необходимо добавить читаемости. Опять же это основной стилистический приём.</li>
<li>Мы выравниваем по центру текст ячейках внутри {{htmlelement("tbody")}} чтобы они совпадали с заголовками. По умолчанию у ячеек свойство {{cssxref("text-align")}} имеет значение <code>left</code>, а заголовки значение <code>center</code>, но обычно выглядит лучше если они выравниваются в одном стиле. По умолчанию, чтобы внешний вид заголовков отличался у них задан жирный шрифт.</li>
<li>Мы выровняли заголовок справа внутри {{htmlelement("tfoot")}} так чтобы он визуально ассоциировался с соответствующими ему данными.</li>
</ul>
diff --git a/files/ru/learn/css/building_blocks/values_and_units/index.html b/files/ru/learn/css/building_blocks/values_and_units/index.html
index 2e32d47268..d495b04979 100644
--- a/files/ru/learn/css/building_blocks/values_and_units/index.html
+++ b/files/ru/learn/css/building_blocks/values_and_units/index.html
@@ -249,7 +249,7 @@ translation_of: Learn/CSS/Building_blocks/Values_and_units
<h2 id="Цвет">Цвет</h2>
-<p>Существует много способов определения цвета в CSS, некоторые из которых реализованы довольно-таки недавно по сравнению с другими. Одинаковые значения цвета могут использоваться везде в CSS, определяете ли вы при этом цвет текста, цвет фона или цвет чего-либо еще.</p>
+<p>Существует много способов определения цвета в CSS, некоторые из которых реализованы довольно-таки недавно по сравнению с другими. Одинаковые значения цвета могут использоваться везде в CSS, определяете ли вы при этом цвет текста, цвет фона или цвет чего-либо ещё.</p>
<p>Стандартная система цветов доступная в современных компьютерах — это 24-битная система, которая позволяет отображать около 16.7 миллионов отдельных цветов через комбинацию различных красных, зелёных и синих каналов с 256 различными значениями каждого канала (256 x 256 x 256 = 16,777,216). Давайте взглянем на некоторые способы, с помощью которых мы можем определять цвет в CSS.</p>
diff --git a/files/ru/learn/css/css_layout/floats/index.html b/files/ru/learn/css/css_layout/floats/index.html
index 9fc55d47cf..b48c895084 100644
--- a/files/ru/learn/css/css_layout/floats/index.html
+++ b/files/ru/learn/css/css_layout/floats/index.html
@@ -26,7 +26,7 @@ translation_of: Learn/CSS/CSS_layout/Floats
<p>Свойство {{cssxref("float")}} вводилось для того, чтобы разработчики могли включать изображение, с обтеканием текста вокруг него слева или справа, как это часто используется в газетах.</p>
-<p>Но разработчики быстро осознали, что можно обтекать все что угодно, не только изображения, поэтому использование float расширилось, например для вёрстки забавных эффектов таких как <a href="https://css-tricks.com/snippets/css/drop-caps/">drop-caps</a> (буквица).</p>
+<p>Но разработчики быстро осознали, что можно обтекать всё что угодно, не только изображения, поэтому использование float расширилось, например для вёрстки забавных эффектов таких как <a href="https://css-tricks.com/snippets/css/drop-caps/">drop-caps</a> (буквица).</p>
<p>Floats очень часто использовались для создания макетов целых веб-страниц, отображающих несколько колонок информации, обтекаемых так, что колонки располагаются друг за другом (поведение по умолчанию предполагает, что колонки должны располагаются друг за другом, в том же порядке в котором они появляются в источнике). Доступны более новые, лучшие методы и поэтому использование floats для этих целей следует рассматривать как <a href="/en-US/docs/Learn/CSS/CSS_layout/Legacy_Layout_Methods">устаревшей техникой</a>.</p>
@@ -36,7 +36,7 @@ translation_of: Learn/CSS/CSS_layout/Floats
<p>Давайте выясним как использовать floats. Мы начнём с очень простого примера включающего обтекание элемента блоком текста. Вы можете следовать за нами создав новый <code>index.html</code> файл на вашем компьютере, заполнив его <a href="https://github.com/mdn/learning-area/blob/master/html/introduction-to-html/getting-started/index.html">простым шаблоном HTML</a>, и вставив код ниже в подходящее место. В конце раздела вы можете увидеть живой пример того, как должен выглядеть финальный код.</p>
-<p>Во-первых, мы начнём с некоторого простого HTML — добавьте следующее в body вашего HTML, удалив все что там было до этого:</p>
+<p>Во-первых, мы начнём с некоторого простого HTML — добавьте следующее в body вашего HTML, удалив всё что там было до этого:</p>
<pre class="brush: html notranslate">&lt;h1&gt;Simple float example&lt;/h1&gt;
diff --git a/files/ru/learn/css/css_layout/grids/index.html b/files/ru/learn/css/css_layout/grids/index.html
index 931f326250..084dc2f654 100644
--- a/files/ru/learn/css/css_layout/grids/index.html
+++ b/files/ru/learn/css/css_layout/grids/index.html
@@ -367,13 +367,13 @@ body {
<p><img alt="" src="https://mdn.mozillademos.org/files/13905/flexbox-grid-incomplete.png" style="display: block; height: 71px; margin: 0px auto; width: 944px;"></p>
-<p>Чтобы исправить это, нам все равно нужно включить наши классы <code>span</code>, чтобы обеспечить ширину, которая заменит значение, используемое <code>flex-basis</code> для этого элемента.</p>
+<p>Чтобы исправить это, нам всё равно нужно включить наши классы <code>span</code>, чтобы обеспечить ширину, которая заменит значение, используемое <code>flex-basis</code> для этого элемента.</p>
<p>Они также не уважают сетку, используемую выше, потому что они ничего не знают об этом.</p>
-<p>Flexbox является <strong>одномерным</strong> по дизайну. Он имеет дело с одним измерением - со строкой или столбцом. Мы не можем создать строгую сетку для столбцов и строк, что означает, что если мы будем использовать flexbox для нашей сетки, нам все равно нужно рассчитать проценты, как для плавающего макета.</p>
+<p>Flexbox является <strong>одномерным</strong> по дизайну. Он имеет дело с одним измерением - со строкой или столбцом. Мы не можем создать строгую сетку для столбцов и строк, что означает, что если мы будем использовать flexbox для нашей сетки, нам всё равно нужно рассчитать проценты, как для плавающего макета.</p>
-<p>В вашем проекте вы все равно можете использовать сетку flexbox из-за дополнительных возможностей выравнивания и распределения пространства. Flexbox обеспечивает надплавки. Однако вам следует помнить, что вы все ещё используете инструмент для чего-то другого, кроме того, для чего он предназначен. Таким образом, вы можете почувствовать, что он заставляет вас прыгать через дополнительные обручи, чтобы получить конечный результат, который вы хотите.</p>
+<p>В вашем проекте вы всё равно можете использовать сетку flexbox из-за дополнительных возможностей выравнивания и распределения пространства. Flexbox обеспечивает надплавки. Однако вам следует помнить, что вы все ещё используете инструмент для чего-то другого, кроме того, для чего он предназначен. Таким образом, вы можете почувствовать, что он заставляет вас прыгать через дополнительные обручи, чтобы получить конечный результат, который вы хотите.</p>
<h2 id="Системы_сторонних_сетей">Системы сторонних сетей</h2>
diff --git a/files/ru/learn/css/css_layout/introduction/index.html b/files/ru/learn/css/css_layout/introduction/index.html
index 218e2a5c19..4f48b6d402 100644
--- a/files/ru/learn/css/css_layout/introduction/index.html
+++ b/files/ru/learn/css/css_layout/introduction/index.html
@@ -255,7 +255,7 @@ translation_of: Learn/CSS/CSS_layout/Introduction
<p><strong>Примечание</strong>: Эти два примера всего лишь малая часть мощности Grid layout; чтобы узнать больше см. нашу статью <a href="/en-US/docs/Learn/CSS/CSS_layout/Grids">Grid Layout</a>.</p>
</div>
-<p>Остальная часть этого руководства освещает другие методы разметок, которые менее важны для основной структуры разметки вашей страницы, но все равно могут помочь вам в достижении определённых задач. Понимая природу задачи каждой разметки, вы вскоре обнаружите, что, глядя на конкретный компонент вашего дизайна, часто будет ясно какой тип разметки подходит лучше всего.</p>
+<p>Остальная часть этого руководства освещает другие методы разметок, которые менее важны для основной структуры разметки вашей страницы, но всё равно могут помочь вам в достижении определённых задач. Понимая природу задачи каждой разметки, вы вскоре обнаружите, что, глядя на конкретный компонент вашего дизайна, часто будет ясно какой тип разметки подходит лучше всего.</p>
<h2 id="Floats">Floats</h2>
@@ -329,7 +329,7 @@ p {
<p>Существует пять типов позиционирования о которых вам следует знать:</p>
<ul>
- <li><strong>Static positioning (статическое позиционирование)</strong> — умолчание, которое получают все элементы — это все лишь значит "поместить элемент в его нормальную позицию в разметке документа — тут нет ничего особенного на что посмотреть".</li>
+ <li><strong>Static positioning (статическое позиционирование)</strong> — умолчание, которое получают все элементы — это всё лишь значит "поместить элемент в его нормальную позицию в разметке документа — тут нет ничего особенного на что посмотреть".</li>
<li><strong>Relative positioning (относительное позиционирование) </strong>позволяет вам менять положение элемента на странице, перемещая его относительно его положения в нормальном потоке — в том числе заставляя его перекрывать другие элементы на странице.</li>
<li><strong>Absolute positioning (абсолютное позиционирование) </strong>полностью перемещает элемент из нормального потока разметки страницы так будто он находится на своём собственном отдельном слое. Оттуда вы можете исправлять его положение относительно краёв <code>&lt;html&gt;</code> элемента страницы (или его ближайшего позиционированного элемента предка). Это является полезным при создании сложных эффектов разметки такие как вкладки, <span class="tlid-translation translation" lang="ru"><span title=""> в которых различные панели содержимого располагаются друг над другом</span></span> и отображаются и/или скрываются по желанию или информационные панели, которые располагаются на экране по умолчанию, но могут скользить по экрану используя кнопки управления.</li>
<li><strong>Fixed positioning (фиксированное позиционирование) </strong>очень похоже на абсолютное за исключением того, что он изменяет положение относительно окна просмотра браузера, а не другого элемента. Это полезно при создании эффектов таких как постоянное меню навигации, которое всегда остаётся в одном и том же месте на экране, в то время как другой контент прокручивается.</li>
@@ -575,7 +575,7 @@ p {
<p>Пример ниже показывает одно такое использование; использование CSS таблиц для вёрстки должно считаться устаревшим методом на данный момент, для тех ситуаций, когда у вас старые браузеры без поддержки Flexbox или Grid.</p>
-<p>Давайте взглянем на пример. Во-первых, немного простой разметки, которая создаёт HTML форму. Каждый input элемент имеет label, и мы также заключили описание в параграф. каждая пара label/input обёрнута в {{htmlelement("div")}}, для целей верстки.</p>
+<p>Давайте взглянем на пример. Во-первых, немного простой разметки, которая создаёт HTML форму. Каждый input элемент имеет label, и мы также заключили описание в параграф. каждая пара label/input обёрнута в {{htmlelement("div")}}, для целей вёрстки.</p>
<pre class="brush: html notranslate">&lt;form&gt;
&lt;p&gt;First of all, tell us your name and age.&lt;/p&gt;
diff --git a/files/ru/learn/css/css_layout/positioning/index.html b/files/ru/learn/css/css_layout/positioning/index.html
index da8a00b79d..e99182f446 100644
--- a/files/ru/learn/css/css_layout/positioning/index.html
+++ b/files/ru/learn/css/css_layout/positioning/index.html
@@ -552,7 +552,7 @@ dt {
<h2 id="Заключение">Заключение</h2>
-<p>Я уверен, что вы повеселились с основами позиционирования; хотя это не является методом, который вы бы использовали для целого макета, все же как вы видите, существует много задач, подходящих для него.</p>
+<p>Я уверен, что вы повеселились с основами позиционирования; хотя это не является методом, который вы бы использовали для целого макета, всё же как вы видите, существует много задач, подходящих для него.</p>
<p>{{PreviousMenuNext("Learn/CSS/CSS_layout/Floats", "Learn/CSS/CSS_layout/Multiple-column_Layout", "Learn/CSS/CSS_layout")}}</p>
diff --git a/files/ru/learn/css/css_layout/practical_positioning_examples/index.html b/files/ru/learn/css/css_layout/practical_positioning_examples/index.html
index 0e526bfc31..7d7b2eaa85 100644
--- a/files/ru/learn/css/css_layout/practical_positioning_examples/index.html
+++ b/files/ru/learn/css/css_layout/practical_positioning_examples/index.html
@@ -116,7 +116,7 @@ body {
<p><strong>Заметка</strong>: Мы используем селектор-потомки с полем <code>.info-box</code> в начале цепочки в этом примере - это значит, что мы можем вставить эту функцию на страницу с другим содержимым, уже на ней, не опасаясь вмешиваться в стили, применяемые к другим частям страницы.</p>
</div>
-<p>Затем мы нарисуем горизонтальные вкладки - все элементы списка будут перемещены влево, чтобы заставить их сидеть в одной строке вместе, их {{cssxref ("list-style-type")}} имеет значение <code>none</code>, чтобы избавиться от пули и их {{cssxref ("width")}} установлены на <code>150px</code>, чтобы они удобно располагались в информационном окне. Элементы {{htmlelement ("a")}} имеют {{cssxref ("display")}} встроенный блок, поэтому они будут сидеть в строке, но все же быть стильными и  соответствующим образом оформлены для кнопок вкладок, используя множество других свойств.</p>
+<p>Затем мы нарисуем горизонтальные вкладки - все элементы списка будут перемещены влево, чтобы заставить их сидеть в одной строке вместе, их {{cssxref ("list-style-type")}} имеет значение <code>none</code>, чтобы избавиться от пули и их {{cssxref ("width")}} установлены на <code>150px</code>, чтобы они удобно располагались в информационном окне. Элементы {{htmlelement ("a")}} имеют {{cssxref ("display")}} встроенный блок, поэтому они будут сидеть в строке, но всё же быть стильными и  соответствующим образом оформлены для кнопок вкладок, используя множество других свойств.</p>
<p>Добавьте следующий CSS:</p>
diff --git a/files/ru/learn/css/css_layout/responsive_design/index.html b/files/ru/learn/css/css_layout/responsive_design/index.html
index 6178dfa90b..8552c0c8ee 100644
--- a/files/ru/learn/css/css_layout/responsive_design/index.html
+++ b/files/ru/learn/css/css_layout/responsive_design/index.html
@@ -192,7 +192,7 @@ original_slug: Learn/CSS/CSS_layout/Отзывчивый_дизайн
<h2 id="Отзывчивые_изображения">Отзывчивые изображения</h2>
-<p><span class="tlid-translation translation" lang="ru"><span title="">Самый простой подход к отзывчивым изображениям был описан</span></span> в ранних статьях Маркотта по отзывчивому дизайну. <span class="tlid-translation translation" lang="ru"><span title="">По сути, вы берете изображение максимального размера, которое могло понадобиться, и уменьшаете его.</span></span> Этот подход до сих пор используется и в большинстве таблиц стилей вы найдёте следующий CSS:</p>
+<p><span class="tlid-translation translation" lang="ru"><span title="">Самый простой подход к отзывчивым изображениям был описан</span></span> в ранних статьях Маркотта по отзывчивому дизайну. <span class="tlid-translation translation" lang="ru"><span title="">По сути, вы берёте изображение максимального размера, которое могло понадобиться, и уменьшаете его.</span></span> Этот подход до сих пор используется и в большинстве таблиц стилей вы найдёте следующий CSS:</p>
<pre class="brush: css notranslate"><code>img {
max-width: 100%;
diff --git a/files/ru/learn/css/first_steps/index.html b/files/ru/learn/css/first_steps/index.html
index d376e97564..af481bea5e 100644
--- a/files/ru/learn/css/first_steps/index.html
+++ b/files/ru/learn/css/first_steps/index.html
@@ -41,7 +41,7 @@ translation_of: Learn/CSS/First_steps
<dt><a href="https://developer.mozilla.org/ru/docs/Learn/CSS/First_steps/%D0%9A%D0%B0%D0%BA_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD_CSS">Как структурирован CSS</a></dt>
<dd>Теперь, когда у вас есть представление о том, что такое CSS и как его использовать, пришло время немного углубиться в структуру самого языка. Мы уже встречали множество концепций, обсуждаемых здесь; Вы можете вернуться к этому, чтобы повторить, если вы находите какие-либо более поздние концепции запутанными.</dd>
<dt><a href="https://developer.mozilla.org/ru/docs/Learn/CSS/First_steps/How_CSS_works">Как работает CSS</a></dt>
- <dd>Мы изучили основы CSS — для чего он нужен и как писать простые таблицы стилей. В этом уроке мы рассмотрим, как браузер берет CSS и HTML и превращает их в веб-страницу.</dd>
+ <dd>Мы изучили основы CSS — для чего он нужен и как писать простые таблицы стилей. В этом уроке мы рассмотрим, как браузер берёт CSS и HTML и превращает их в веб-страницу.</dd>
<dt><a href="https://developer.mozilla.org/en-US/docs/Learn/CSS/First_steps/Using_your_new_knowledge">Использование ваших новых знаний</a></dt>
<dd>С учётом того, что вы узнали за последние несколько уроков, вы должны обнаружить, что вы можете форматировать простые текстовые документы с использованием CSS, чтобы добавить к ним свой собственный стиль. Эта статья даёт вам шанс сделать это.</dd>
</dl>
diff --git a/files/ru/learn/css/styling_text/styling_links/index.html b/files/ru/learn/css/styling_text/styling_links/index.html
index 993e92c7b8..710a785e66 100644
--- a/files/ru/learn/css/styling_text/styling_links/index.html
+++ b/files/ru/learn/css/styling_text/styling_links/index.html
@@ -55,7 +55,7 @@ translation_of: Learn/CSS/Styling_text/Styling_links
<p><span class="tlid-translation translation" lang="ru"><span title="">Вы заметите несколько вещей при изучении стилей по умолчанию</span></span>:</p>
<ul>
- <li>Ссылки подчеркнуты.</li>
+ <li>Ссылки подчёркнуты.</li>
<li>Не посещённые ссылки синие.</li>
<li>Посещённые ссылки фиолетовые</li>
<li>Наведение курсора мыши на ссылку меняют указатель мыши на иконку маленькой руки.</li>
@@ -66,7 +66,7 @@ translation_of: Learn/CSS/Styling_text/Styling_links
<p>Довольно интересно, что эти стили по умолчанию приблизительно такие же какими они были в первые дни браузеров в середине 1990-ых. Это потому, что пользователи знают и привыкли ожидать такого поведения — если бы ссылки были стилизованы по-разному, это бы путало много людей. Это не значит, что вы недолжны стилизовать ссылки совсем, просто вы не должны уходить слишком далеко от ожидаемого поведения. По крайней мере вы должны:</p>
<ul>
- <li>Использовать нижнее подчёркивание для ссылок, но не для других вещей. Если вы не хотите подчёркивать ссылки, то хотя бы выделите их каким-либо другим путем.</li>
+ <li>Использовать нижнее подчёркивание для ссылок, но не для других вещей. Если вы не хотите подчёркивать ссылки, то хотя бы выделите их каким-либо другим путём.</li>
<li>Сделать так чтобы они как-нибудь реагировали на наведение/фокусировку на них и немного отличались после активации.</li>
</ul>
@@ -171,7 +171,7 @@ Firefox&lt;/a&gt;, &lt;a href="https://www.google.com/chrome/index.html"&gt;Goog
<ul>
<li>Первые два правила не так интересны в этом обсуждении.</li>
- <li>Третье правило использует селектор <code>a</code> чтобы избавиться от подчёркивания текста и контура фокуса по умолчанию (которые все равно варьируют в зависимости от браузера), а также добавляет малое количество padding к каждой ссылке — все это станет ясно позже.</li>
+ <li>Третье правило использует селектор <code>a</code> чтобы избавиться от подчёркивания текста и контура фокуса по умолчанию (которые всё равно варьируют в зависимости от браузера), а также добавляет малое количество padding к каждой ссылке — все это станет ясно позже.</li>
<li>Далее, мы используем селекторы <code>a:link</code> и <code>a:visited</code> чтобы настроить пару цветовых вариаций не посещённых и посещённых ссылок, так чтоб они отличались.</li>
<li>Следующие два правила используют <code>a:focus</code> и <code>a:hover</code> настраивают сфокусированные и наведённые (hovered) ссылки таким образом чтобы они имели разные фоновые цвета, плюс нижнее подчёркивание чтобы ссылка выделялась ещё больше. Два пункта на которые надо обратить внимание:
<ul>
diff --git a/files/ru/learn/css/styling_text/styling_lists/index.html b/files/ru/learn/css/styling_text/styling_lists/index.html
index 3b57fc4763..fd507cffeb 100644
--- a/files/ru/learn/css/styling_text/styling_lists/index.html
+++ b/files/ru/learn/css/styling_text/styling_lists/index.html
@@ -281,18 +281,18 @@ ul li {
<p>{{ EmbedLiveSample('value', '100%', 150) }}</p>
<div class="note">
-<p><strong>Обратите внимание</strong>: Даже если вы используете нечисловой {{cssxref("list-style-type")}}, вам все равно надо использовать эквивалентное цифровое значение в атрибуте <code>value</code>.</p>
+<p><strong>Обратите внимание</strong>: Даже если вы используете нечисловой {{cssxref("list-style-type")}}, вам всё равно надо использовать эквивалентное цифровое значение в атрибуте <code>value</code>.</p>
</div>
<h2 id="Активное_изучение_Стилизация_вложенного_списка">Активное изучение: <span class="tlid-translation translation" lang="ru"><span title="">Стилизация вложенного списка</span></span></h2>
-<p>В этой сессии активного изучения, мы хотим, чтобы вы взяли все что вы выучили выше и попробовали стилизовать вложенный список. Мы предоставили вам HTML и хотим, чтобы вы:</p>
+<p>В этой сессии активного изучения, мы хотим, чтобы вы взяли всё что вы выучили выше и попробовали стилизовать вложенный список. Мы предоставили вам HTML и хотим, чтобы вы:</p>
<ol>
<li>Задали неупорядоченному списку квадратные маркеры.</li>
<li>Задали пунктам неупорядоченного и упорядоченного списка 1,5 межстрочный интервал их размера шрифта.</li>
<li>Задали упорядоченному списку маркеры в виде строчных букв.</li>
- <li>Не стесняйтесь играться с примерами списков столько сколько вам нравится, экспериментируя с типами маркеров, интервалами или со всем что вы найдете.</li>
+ <li>Не стесняйтесь играться с примерами списков столько сколько вам нравится, экспериментируя с типами маркеров, интервалами или со всем что вы найдёте.</li>
</ol>
<p>Если вы допустите ошибку, вы всегда можете сделать сброс используя кнопку <em>Reset</em>. Если вы застрянете, нажмите кнопку <em>Show solution </em>чтобы посмотреть возможный ответ.</p>
diff --git a/files/ru/learn/css/styling_text/web_fonts/index.html b/files/ru/learn/css/styling_text/web_fonts/index.html
index f617762a19..96b48d3f60 100644
--- a/files/ru/learn/css/styling_text/web_fonts/index.html
+++ b/files/ru/learn/css/styling_text/web_fonts/index.html
@@ -108,7 +108,7 @@ original_slug: Learn/CSS/Styling_text/Веб_шрифты
<p>Теперь распакуйте набор веб-шрифта, который вы только что сгенерировали. Внутри распакованной папки вы увидите три полезных элемента:</p>
<ul>
- <li>несколько версий каждого шрифта (например <code>.ttf</code>, <code>.woff</code>, <code>.woff2</code> и т.д.; <span class="tlid-translation translation" lang="ru"><span title="">предоставленные шрифты будут обновляться со временем по мере изменения требований поддержки браузера</span></span>). Как упомянуто выше, несколько шрифтов нужны для кросс-браузерной поддержки — это метод Fontsquirrel быть уверенными что вы получили все что вам надо.</li>
+ <li>несколько версий каждого шрифта (например <code>.ttf</code>, <code>.woff</code>, <code>.woff2</code> и т.д.; <span class="tlid-translation translation" lang="ru"><span title="">предоставленные шрифты будут обновляться со временем по мере изменения требований поддержки браузера</span></span>). Как упомянуто выше, несколько шрифтов нужны для кросс-браузерной поддержки — это метод Fontsquirrel быть уверенными что вы получили всё что вам надо.</li>
<li>Демо файл HTML для каждого шрифта — загрузите их в ваш браузер чтобы посмотреть, как будет выглядеть шрифт в разных контекстах использования.</li>
<li>Файл <code>stylesheet.css</code>, который содержит сгенерированный @font-face код который вам нужен.</li>
</ul>
diff --git a/files/ru/learn/forms/form_validation/index.html b/files/ru/learn/forms/form_validation/index.html
index 4668beaac3..fd3c1a68e1 100644
--- a/files/ru/learn/forms/form_validation/index.html
+++ b/files/ru/learn/forms/form_validation/index.html
@@ -565,7 +565,7 @@ email.addEventListener("input", function (event) {
&lt;button&gt;Submit&lt;/button&gt;
&lt;/form&gt;</pre>
-<p>Эта простая форма использует атрибут {{htmlattrxref("novalidate","form")}} для отключения автоматической валидации браузера, что позволяет нашему скрипту контролировать валидацию. Однако это не отключает поддержку API ограничений валидации или применения псевдоклассов CSS {{cssxref(":valid")}}, {{cssxref(":invalid")}}, {{cssxref(":in-range")}} и {{cssxref(":out-of-range")}}. Это означает, что, хотя браузер не проверяет правильность формы перед отправкой своих данных, вы все равно можете сделать это самостоятельно и соответствующим образом сформировать форму.</p>
+<p>Эта простая форма использует атрибут {{htmlattrxref("novalidate","form")}} для отключения автоматической валидации браузера, что позволяет нашему скрипту контролировать валидацию. Однако это не отключает поддержку API ограничений валидации или применения псевдоклассов CSS {{cssxref(":valid")}}, {{cssxref(":invalid")}}, {{cssxref(":in-range")}} и {{cssxref(":out-of-range")}}. Это означает, что, хотя браузер не проверяет правильность формы перед отправкой своих данных, вы всё равно можете сделать это самостоятельно и соответствующим образом сформировать форму.</p>
<p>Атрибут <a href="/en-US/docs/Accessibility/ARIA/ARIA_Live_Regions"><code>aria-live</code></a> гарантирует, что наше индивидуальное сообщение об ошибке будет доступно всем, включая тех, кто использует вспомогательные технологии, такие как скрин-ридеры.</p>
diff --git a/files/ru/learn/forms/how_to_build_custom_form_controls/index.html b/files/ru/learn/forms/how_to_build_custom_form_controls/index.html
index 130f358cad..597284477b 100644
--- a/files/ru/learn/forms/how_to_build_custom_form_controls/index.html
+++ b/files/ru/learn/forms/how_to_build_custom_form_controls/index.html
@@ -99,7 +99,7 @@ original_slug: Learn/HTML/Forms/How_to_build_custom_form_widgets
<h3 id="Определение_структуры_и_семантики_HTML">Определение структуры и семантики HTML</h3>
-<p>Теперь, когда основной функционал виджета определён, пора начать создание виджета. Первым делом определим его HTML структуру и придадим основную семантику. Вот все что нам нужно чтобы переделать элемент {{HTMLElement("select")}}:</p>
+<p>Теперь, когда основной функционал виджета определён, пора начать создание виджета. Первым делом определим его HTML структуру и придадим основную семантику. Вот всё что нам нужно чтобы переделать элемент {{HTMLElement("select")}}:</p>
<pre class="brush: html">&lt;!-- Это основной контейнер для нашего виджета.
Атрибут tabindex позволяет пользователю переместить фокус на виджет.
@@ -329,7 +329,7 @@ original_slug: Learn/HTML/Forms/How_to_build_custom_form_widgets
<ul>
<li>Пользователь отключил JavaScript: Это самый редкий случай; сейчас очень мало людей отключают JavaScript.</li>
- <li>Скрипт не загружается. Это один из самых распространённых случаев, особенно в мобильном мире, где сеть не очень надежная.</li>
+ <li>Скрипт не загружается. Это один из самых распространённых случаев, особенно в мобильном мире, где сеть не очень надёжная.</li>
<li>Скрипт глючит.Вы должны всегда учитывать эту возможность.</li>
<li>Скрипт конфликтует со сторонним скриптом. Это может случиться со скриптами отслеживания или любыми букмарклетами (bookmarklets), которые использует пользователь.</li>
<li>Скрипт конфликтует с расширением браузера или зависит от него (такими как расширение <a href="https://addons.mozilla.org/fr/firefox/addon/noscript/" rel="external" title="https://addons.mozilla.org/fr/firefox/addon/noscript/">NoScript</a> в Firefox, или расширение <a href="https://chrome.google.com/webstore/detail/notscripts/odjhifogjcknibkahlpidmdajjpkkcfn" rel="external" title="https://chrome.google.com/webstore/detail/notscripts/odjhifogjcknibkahlpidmdajjpkkcfn">NotScripts</a> в Chrome).</li>
diff --git a/files/ru/learn/forms/sending_and_retrieving_form_data/index.html b/files/ru/learn/forms/sending_and_retrieving_form_data/index.html
index 96797fe6b6..1a9074df60 100644
--- a/files/ru/learn/forms/sending_and_retrieving_form_data/index.html
+++ b/files/ru/learn/forms/sending_and_retrieving_form_data/index.html
@@ -171,7 +171,7 @@ say=Hi&amp;to=Mom</pre>
<h4 id="Пример_Чистый_PHP">Пример: Чистый PHP</h4>
-<p><a href="https://php.net/">PHP</a> предлагает несколько глобальных объектов для доступа к данным. Например, вы используете <code>POST</code>-метод, в приведённом ниже примере данные просто получаются и показываются пользователю. Разумеется, как использовать данные — решать только вам. Вы можете отобразить эти данные, поместить в базу данных, отправить по почте или передать эти данные куда-либо еще.</p>
+<p><a href="https://php.net/">PHP</a> предлагает несколько глобальных объектов для доступа к данным. Например, вы используете <code>POST</code>-метод, в приведённом ниже примере данные просто получаются и показываются пользователю. Разумеется, как использовать данные — решать только вам. Вы можете отобразить эти данные, поместить в базу данных, отправить по почте или передать эти данные куда-либо ещё.</p>
<pre class="brush: php notranslate">&lt;?php
// The global $_POST variable allows you to access the data sent with the POST method by name
diff --git a/files/ru/learn/forms/sending_forms_through_javascript/index.html b/files/ru/learn/forms/sending_forms_through_javascript/index.html
index b9c76e7ef7..de31f823d8 100644
--- a/files/ru/learn/forms/sending_forms_through_javascript/index.html
+++ b/files/ru/learn/forms/sending_forms_through_javascript/index.html
@@ -16,7 +16,7 @@ original_slug: Learn/HTML/Forms/Sending_forms_through_JavaScript
<p>Отправка стандартной HTML формы, как описывалось в предыдущей статье, загружает URL-адрес, по которому были отправлены данные, это означает, что окно браузера перемещается с полной загрузкой страницы. Если избегать полную перезагрузку страницы, можно обеспечить более плавную работу, за счёт предотвращения задержек в сети и возможных визуальных проблем (например, мерцания).</p>
-<p>Многие современные пользовательские интерфейсы используют HTML формы только для сбора пользовательского ввода, а не для для отправки данных. Когда пользователь пытается отправить свои данные, приложение берет контроль и асинхронно передаёт данные в фоновом режиме, обновляя только ту часть всего интерфейса пользователя, которой требуется обновление.</p>
+<p>Многие современные пользовательские интерфейсы используют HTML формы только для сбора пользовательского ввода, а не для для отправки данных. Когда пользователь пытается отправить свои данные, приложение берёт контроль и асинхронно передаёт данные в фоновом режиме, обновляя только ту часть всего интерфейса пользователя, которой требуется обновление.</p>
<p>Асинхронная отправка произвольных данных обычно называется <a href="/en-US/docs/AJAX">AJAX</a>, что означает <strong>"Asynchronous JavaScript And XML" </strong>(Асинхронный JavaScript и XML).</p>
diff --git a/files/ru/learn/getting_started_with_the_web/css_basics/index.html b/files/ru/learn/getting_started_with_the_web/css_basics/index.html
index 243af47b53..0e5373c160 100644
--- a/files/ru/learn/getting_started_with_the_web/css_basics/index.html
+++ b/files/ru/learn/getting_started_with_the_web/css_basics/index.html
@@ -31,7 +31,7 @@ translation_of: Learn/Getting_started_with_the_web/CSS_basics
<p>Давайте попробуем: вставьте эти три строки CSS в новый файл в ваш текстовый редактор, а затем сохраните файл как <code>style.css</code> в вашей папке <code>styles</code>.</p>
-<p>Но нам все равно нужно применить CSS к нашему HTML документу. В противном случае, CSS стиль не повлияет на то, как ваш браузер отобразит HTML документ. (Если вы не следили за нашим проектом, то прочитайте раздел <a href="/ru/Learn/Getting_started_with_the_web/Dealing_with_files">Работа с файлами</a> и <a href="/ru/Learn/Getting_started_with_the_web/HTML_basics">Основы HTML</a>, чтобы узнать, что вам нужно сделать в первую очередь.)</p>
+<p>Но нам всё равно нужно применить CSS к нашему HTML документу. В противном случае, CSS стиль не повлияет на то, как ваш браузер отобразит HTML документ. (Если вы не следили за нашим проектом, то прочитайте раздел <a href="/ru/Learn/Getting_started_with_the_web/Dealing_with_files">Работа с файлами</a> и <a href="/ru/Learn/Getting_started_with_the_web/HTML_basics">Основы HTML</a>, чтобы узнать, что вам нужно сделать в первую очередь.)</p>
<ol>
<li>Откройте ваш файл <code>index.html</code> и вставьте следующую строку куда-нибудь в шапку, между <code>&lt;head&gt;</code> и <code>&lt;/head&gt;</code> тегами:
diff --git a/files/ru/learn/getting_started_with_the_web/dealing_with_files/index.html b/files/ru/learn/getting_started_with_the_web/dealing_with_files/index.html
index 1efcf60a76..90702e8220 100644
--- a/files/ru/learn/getting_started_with_the_web/dealing_with_files/index.html
+++ b/files/ru/learn/getting_started_with_the_web/dealing_with_files/index.html
@@ -95,7 +95,7 @@ translation_of: Learn/Getting_started_with_the_web/Dealing_with_files
<p>На данный момент это все, что вам нужно знать</p>
<div class="note">
-<p><strong>Примечание</strong>: Файловая система Windows стремится использовать обратный слеш (backslash), а не косую черту (forwardslash), например <code>C:\windows</code>. Это не имеет значения, даже если вы разрабатываете веб-сайт на Windows, вы все равно должны использовать обычные слеши в вашем коде.</p>
+<p><strong>Примечание</strong>: Файловая система Windows стремится использовать обратный слеш (backslash), а не косую черту (forwardslash), например <code>C:\windows</code>. Это не имеет значения, даже если вы разрабатываете веб-сайт на Windows, вы всё равно должны использовать обычные слеши в вашем коде.</p>
</div>
<h2 id="Что_должно_быть_сделано">Что должно быть сделано?</h2>
diff --git a/files/ru/learn/getting_started_with_the_web/html_basics/index.html b/files/ru/learn/getting_started_with_the_web/html_basics/index.html
index c0265eeccc..45738e908a 100644
--- a/files/ru/learn/getting_started_with_the_web/html_basics/index.html
+++ b/files/ru/learn/getting_started_with_the_web/html_basics/index.html
@@ -96,7 +96,7 @@ translation_of: Learn/Getting_started_with_the_web/HTML_basics
<li><code>&lt;!DOCTYPE html&gt;</code> — доктайп. В прошлом, когда HTML был молод (около 1991/1992), доктайпы должны были выступать в качестве ссылки на набор правил, которым HTML страница должна была следовать, чтобы считаться хорошим HTML, что могло означать автоматическую проверку ошибок и другие полезные вещи. Однако в наши дни, никто не заботится об этом, и они на самом деле просто исторический артефакт, который должен быть включён для того, что бы все работало правильно. На данный момент это все, что вам нужно знать.</li>
<li><code>&lt;html&gt;&lt;/html&gt;</code> — элемент {{htmlelement("html")}}. Этот элемент оборачивает весь контент на всей странице, и иногда известен как корневой элемент.</li>
<li><code>&lt;head&gt;&lt;/head&gt;</code> — элемент {{htmlelement("head")}}. Этот элемент выступает в качестве контейнера для всего, что вы пожелаете включить на HTML страницу, но<em> не являющегося </em>контентом, который вы показываете пользователям вашей страницы. К ним относятся такие вещи, как ключевые слова и описание страницы, которые будут появляться в результатах поиска, CSS стили нашего контента, кодировка и многое другое.</li>
- <li><code>&lt;body&gt;&lt;/body&gt;</code> — элемент {{htmlelement("body")}}. В нем содержится <em>весь</em> контент, который вы хотите показывать пользователям, когда они посещают вашу страницу, будь то текст, изображения, видео, игры, проигрываемые аудиодорожки или что-то еще.</li>
+ <li><code>&lt;body&gt;&lt;/body&gt;</code> — элемент {{htmlelement("body")}}. В нем содержится <em>весь</em> контент, который вы хотите показывать пользователям, когда они посещают вашу страницу, будь то текст, изображения, видео, игры, проигрываемые аудиодорожки или что-то ещё.</li>
<li><code>&lt;meta charset="utf-8"&gt;</code> — этот элемент устанавливает UTF-8 кодировку вашего документа, которая включает в себя большинство символов из всех известных человечеству языков. По сути, теперь документ может обрабатывать любой текстовый контент, который вы в него вложите. Нет причин не устанавливать её, так как это может помочь избежать некоторых проблем в дальнейшем.</li>
<li><code>&lt;title&gt;&lt;/title&gt;</code> — элемент {{htmlelement("title")}}. Этот элемент устанавливает заголовок для вашей страницы, который является названием, появляющимся на вкладке браузера загружаемой страницы, и используется для описания страницы, когда вы добавляете её в закладки/избранное.</li>
</ul>
diff --git a/files/ru/learn/getting_started_with_the_web/javascript_basics/index.html b/files/ru/learn/getting_started_with_the_web/javascript_basics/index.html
index f5c2597f08..0d939084f5 100644
--- a/files/ru/learn/getting_started_with_the_web/javascript_basics/index.html
+++ b/files/ru/learn/getting_started_with_the_web/javascript_basics/index.html
@@ -316,7 +316,7 @@ myHTML.onclick = function() {};</pre>
<h3 id="Добавление_смены_изображения">Добавление смены изображения</h3>
-<p>В этом разделе мы добавим ещё одно изображение на наш сайт и добавим некоторый простой JavaScript для переключения между двумя изображениями, когда по ним щелкнули.</p>
+<p>В этом разделе мы добавим ещё одно изображение на наш сайт и добавим некоторый простой JavaScript для переключения между двумя изображениями, когда по ним щёлкнули.</p>
<ol>
<li>В первую очередь найдите другое изображение, которые вы хотели бы показать на вашем сайте. Убедитесь что оно такого же размера, как ваше первое изображение или максимально близкое к нему.</li>
diff --git a/files/ru/learn/html/introduction_to_html/advanced_text_formatting/index.html b/files/ru/learn/html/introduction_to_html/advanced_text_formatting/index.html
index 4f401ed57b..53778afe17 100644
--- a/files/ru/learn/html/introduction_to_html/advanced_text_formatting/index.html
+++ b/files/ru/learn/html/introduction_to_html/advanced_text_formatting/index.html
@@ -14,7 +14,7 @@ original_slug: Learn/HTML/Введение_в_HTML/Advanced_text_formatting
<div>{{PreviousMenuNext("Learn/HTML/Introduction_to_HTML/Creating_hyperlinks", "Learn/HTML/Introduction_to_HTML/Document_and_website_structure", "Learn/HTML/Introduction_to_HTML")}}</div>
-<p class="summary">В HTML для форматирования текста есть много других элементов, не рассмотренных  в статье <a href="https://developer.mozilla.org/ru/docs/Learn/HTML/%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_HTML/HTML_text_fundamentals">Основы редактирования текста в HTML</a>. Элементы, описанные в этой статье, не так часто используются, но все же полезны для понимания (и это всё ещё будет не полный список элементов). Здесь вы узнаете о цитатах, списках описания, компьютерном коде и другом виде текстовых элементов, подстрочном и надстрочном тексте, контактной информации и других типах текста.</p>
+<p class="summary">В HTML для форматирования текста есть много других элементов, не рассмотренных  в статье <a href="https://developer.mozilla.org/ru/docs/Learn/HTML/%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_HTML/HTML_text_fundamentals">Основы редактирования текста в HTML</a>. Элементы, описанные в этой статье, не так часто используются, но всё же полезны для понимания (и это всё ещё будет не полный список элементов). Здесь вы узнаете о цитатах, списках описания, компьютерном коде и другом виде текстовых элементов, подстрочном и надстрочном тексте, контактной информации и других типах текста.</p>
<table class="learn-box standard-table">
<tbody>
diff --git a/files/ru/learn/html/introduction_to_html/html_text_fundamentals/index.html b/files/ru/learn/html/introduction_to_html/html_text_fundamentals/index.html
index d27868014a..ba4682f821 100644
--- a/files/ru/learn/html/introduction_to_html/html_text_fundamentals/index.html
+++ b/files/ru/learn/html/introduction_to_html/html_text_fundamentals/index.html
@@ -757,7 +757,7 @@ textarea.onkeyup = function(){
<h2 id="Акцент_и_важность"><span class="short_text" id="result_box" lang="ru"><span>Акцент и важность</span></span></h2>
<div id="gt-res-content">
-<div class="trans-verified-button-small" dir="ltr" id="gt-res-dir-ctr"><span id="result_box" lang="ru"><span>В обиходе мы часто подчёркиваем определённые слова, чтобы изменить смысл предложения и мы часто хотим отметить некоторые слова как важные или разные в некотором роде.</span> <span>HTML предоставляет различные семантические элементы, позволяющие нам добавлять текстовые материалы с такими эффектами, и в этом разделе мы рассмотрим несколько наиболее распространенных.</span></span></div>
+<div class="trans-verified-button-small" dir="ltr" id="gt-res-dir-ctr"><span id="result_box" lang="ru"><span>В обиходе мы часто подчёркиваем определённые слова, чтобы изменить смысл предложения и мы часто хотим отметить некоторые слова как важные или разные в некотором роде.</span> <span>HTML предоставляет различные семантические элементы, позволяющие нам добавлять текстовые материалы с такими эффектами, и в этом разделе мы рассмотрим несколько наиболее распространённых.</span></span></div>
<div class="trans-verified-button-small" dir="ltr"></div>
</div>
diff --git a/files/ru/learn/html/introduction_to_html/the_head_metadata_in_html/index.html b/files/ru/learn/html/introduction_to_html/the_head_metadata_in_html/index.html
index 0635ec9342..f2abf967b2 100644
--- a/files/ru/learn/html/introduction_to_html/the_head_metadata_in_html/index.html
+++ b/files/ru/learn/html/introduction_to_html/the_head_metadata_in_html/index.html
@@ -67,7 +67,7 @@ original_slug: Learn/HTML/Введение_в_HTML/The_head_metadata_in_HTML
&lt;title&gt;Моя тестовая страница&lt;/title&gt;
&lt;/head&gt;</pre>
-<p>Однако на больших страницах блок &lt;head&gt; может быть довольно объёмным. Попробуйте зайти на какие-нибудь из ваших любимых сайтов и посмотреть содержимое &lt;head&gt; с помощью <a href="/ru/docs/Learn/Discover_browser_developer_tools">инструментов разработчика</a>. Наша цель сейчас — не в том, чтобы показать вам, как использовать всё, что только можно добавить в head, а дать представление и научить вас, как использовать основные элементы. Давайте начнем.</p>
+<p>Однако на больших страницах блок &lt;head&gt; может быть довольно объёмным. Попробуйте зайти на какие-нибудь из ваших любимых сайтов и посмотреть содержимое &lt;head&gt; с помощью <a href="/ru/docs/Learn/Discover_browser_developer_tools">инструментов разработчика</a>. Наша цель сейчас — не в том, чтобы показать вам, как использовать всё, что только можно добавить в head, а дать представление и научить вас, как использовать основные элементы. Давайте начнём.</p>
<h2 id="Название_страницы_title">Название страницы (title)</h2>
diff --git a/files/ru/learn/html/multimedia_and_embedding/adding_vector_graphics_to_the_web/index.html b/files/ru/learn/html/multimedia_and_embedding/adding_vector_graphics_to_the_web/index.html
index e6ce44bb9d..89995e889b 100644
--- a/files/ru/learn/html/multimedia_and_embedding/adding_vector_graphics_to_the_web/index.html
+++ b/files/ru/learn/html/multimedia_and_embedding/adding_vector_graphics_to_the_web/index.html
@@ -159,7 +159,7 @@ background-size: contain;</code></pre>
<h4 id="Минусы_2">Минусы</h4>
<ul>
- <li>Этот метод подходит, только если вы используете SVG лишь в одном месте. Дублирование делает обслуживание ресурсоемким.</li>
+ <li>Этот метод подходит, только если вы используете SVG лишь в одном месте. Дублирование делает обслуживание ресурсоёмким.</li>
<li>Дополнительный SVG код увеличивает размер вашего HTML файла.</li>
<li><span class="tlid-translation translation" lang="ru"><span title="">Браузер не может кешировать встроенный SVG, так как он кеширует обычные изображения</span></span>.</li>
<li>Вы можете добавить альтернативный вариант в элементе {{svgelement("foreignObject")}}, но браузеры поддерживающие SVG будут продолжать загружать все альтернативные изображения. Вы должны взвесить действительно стоит ли поддержка устаревших браузеров дополнительных накладных расходов (ресурсов).</li>
diff --git a/files/ru/learn/html/multimedia_and_embedding/index.html b/files/ru/learn/html/multimedia_and_embedding/index.html
index b2aecfbd25..c6a44fe426 100644
--- a/files/ru/learn/html/multimedia_and_embedding/index.html
+++ b/files/ru/learn/html/multimedia_and_embedding/index.html
@@ -51,7 +51,7 @@ translation_of: Learn/HTML/Multimedia_and_embedding
<dl>
<dt><a href="https://developer.mozilla.org/en-US/docs/Learn/HTML/Howto/Add_a_hit_map_on_top_of_an_image">Как добавить карту кликов поверх изображения</a></dt>
- <dd>Карта изображения предоставляет способ разделить изображение на части, которые ссылаются на разные места (представьте себе географическую карту, которая показывает подробную информацию о каждой стране, когда вы кликаете на нее.) Эта технология иногда может быть полезной.</dd>
+ <dd>Карта изображения предоставляет способ разделить изображение на части, которые ссылаются на разные места (представьте себе географическую карту, которая показывает подробную информацию о каждой стране, когда вы кликаете на неё.) Эта технология иногда может быть полезной.</dd>
<dt><a href="https://learning.mozilla.org/en-US/activities/web-lit-basics-two/">Основы Веб-грамотности 2</a></dt>
<dd>
<p>Превосходный курс от фонда Mozilla, который освещает и проверяет некоторые навыки, полученные в модуле <em>Мультимедиа и встраивание</em>. Погрузитесь глубже в основы вёрстки веб-страниц, проектирования для доступности, обмена ресурсами, использования интернет-СМИ и работы с открытым кодом.</p>
diff --git a/files/ru/learn/html/multimedia_and_embedding/other_embedding_technologies/index.html b/files/ru/learn/html/multimedia_and_embedding/other_embedding_technologies/index.html
index 5baed457cc..64852c2c4d 100644
--- a/files/ru/learn/html/multimedia_and_embedding/other_embedding_technologies/index.html
+++ b/files/ru/learn/html/multimedia_and_embedding/other_embedding_technologies/index.html
@@ -7,7 +7,7 @@ translation_of: Learn/HTML/Multimedia_and_embedding/Other_embedding_technologies
<div>{{PreviousMenuNext("Learn/HTML/Multimedia_and_embedding/Video_and_audio_content", "Learn/HTML/Multimedia_and_embedding/Adding_vector_graphics_to_the_Web", "Learn/HTML/Multimedia_and_embedding")}}</div>
-<p class="summary">К настоящему моменту вы уже должны уметь прикреплять вложения на свои веб-страницы, включая изображения, видео и аудио. На этом этапе мы хотели бы сделать шаг в сторону, рассматривая некоторые элементы, которые позволяют встраивать в ваши веб-страницы самые разнообразные типы контента: {{htmlelement ("iframe")}}, {{htmlelement ( "embed")}} и {{htmlelement ("object")}}. &lt;iframe&gt; предназначен для встраивания других веб-страниц, а два других позволяют встраивать PDF-файлы, SVG и даже Flash - устаревшую технологию, которую вы все равно иногда увидите.</p>
+<p class="summary">К настоящему моменту вы уже должны уметь прикреплять вложения на свои веб-страницы, включая изображения, видео и аудио. На этом этапе мы хотели бы сделать шаг в сторону, рассматривая некоторые элементы, которые позволяют встраивать в ваши веб-страницы самые разнообразные типы контента: {{htmlelement ("iframe")}}, {{htmlelement ( "embed")}} и {{htmlelement ("object")}}. &lt;iframe&gt; предназначен для встраивания других веб-страниц, а два других позволяют встраивать PDF-файлы, SVG и даже Flash - устаревшую технологию, которую вы всё равно иногда увидите.</p>
<table class="learn-box standard-table">
<tbody>
@@ -355,7 +355,7 @@ textarea.onkeyup = function(){
<h2 id="Заключение">Заключение</h2>
-<p>Тема встраивания другого контента в веб-документы поначалу может показаться очень сложной для понимания, поэтому в этой статье мы попытались представить её простым, знакомым способом, который сразу же станет актуальным, но все же намекает на некоторые из более сложных функций вовлечённых технологий. Начнём с того, что вы вряд ли будете использовать большое количество встраивании стороннего контента, помимо встроенных карт и видео на своих страницах.</p>
+<p>Тема встраивания другого контента в веб-документы поначалу может показаться очень сложной для понимания, поэтому в этой статье мы попытались представить её простым, знакомым способом, который сразу же станет актуальным, но всё же намекает на некоторые из более сложных функций вовлечённых технологий. Начнём с того, что вы вряд ли будете использовать большое количество встраивании стороннего контента, помимо встроенных карт и видео на своих страницах.</p>
<p>Существует много других технологий, которые включают в себя внедрение внешнего контента, помимо тех, которые мы обсуждали здесь. Мы видели некоторые из ранних статей, например {{htmlelement ("video")}}, {{htmlelement ("audio")}} и {{htmlelement ("img")}}, но есть и другие. Например, {{htmlelement ("canvas")}} для 2D-и 3D-графики, сгенерированной JavaScript, и {{SVGElement ("svg")}} для встраивания векторной графики. Мы рассмотрим SVG в следующей статье модуля.</p>
diff --git a/files/ru/learn/html/multimedia_and_embedding/responsive_images/index.html b/files/ru/learn/html/multimedia_and_embedding/responsive_images/index.html
index 3f4ad83e69..800b73074d 100644
--- a/files/ru/learn/html/multimedia_and_embedding/responsive_images/index.html
+++ b/files/ru/learn/html/multimedia_and_embedding/responsive_images/index.html
@@ -34,7 +34,7 @@ translation_of: Learn/HTML/Multimedia_and_embedding/Responsive_images
<ul>
<li>Содержимому тега <code>main</code> задана максимальная ширина 1200 пикселей. Если окно браузера выше этой ширины, то содержимое сайта остаётся на 1200 пикселей и центрирует себя в доступном пространстве. Если окно браузера ниже этой ширины, содержимое устанавливается в 100% от ширины экрана.</li>
- <li>Изображение в шапке всегда будет оставаться в центре тега header вне зависимости от ширины браузера. Если сайт будет просматриваться на узких экранах, то важные детали в центре изображения (люди) все равно будут видны. Все, что выходит за пределы ширины экрана будет скрыто. Высота шапки 200 пикселей.</li>
+ <li>Изображение в шапке всегда будет оставаться в центре тега header вне зависимости от ширины браузера. Если сайт будет просматриваться на узких экранах, то важные детали в центре изображения (люди) всё равно будут видны. Все, что выходит за пределы ширины экрана будет скрыто. Высота шапки 200 пикселей.</li>
<li>Изображения в содержимом заданы так, что если ширина body становится меньше чем ширина изображения, то изображения начинают сжиматься и остаются всегда внутри body и не выступают за его пределы.</li>
</ul>
diff --git a/files/ru/learn/html/tables/advanced/index.html b/files/ru/learn/html/tables/advanced/index.html
index a98631d064..f10ce90fe7 100644
--- a/files/ru/learn/html/tables/advanced/index.html
+++ b/files/ru/learn/html/tables/advanced/index.html
@@ -64,7 +64,7 @@ translation_of: Learn/HTML/Tables/Advanced
<ul>
<li>Элементом <code>&lt;thead&gt;</code> нужно обернуть часть таблицы которая относится к заголовку — обычно это первая строка содержащая заголовки колонок, но это не обязательно всегда такой случай. Если вы используете {{htmlelement("col")}}/{{htmlelement("colgroup")}} элемент, тогда заголовок должен находиться ниже его.</li>
- <li>Элементом <code>&lt;tfoot&gt;</code> нужно обернуть ту часть, которая относится к footer таблицы — например, это может быть последняя строка в которой отражаются суммы по столбцам таблицы. Вы можете включить сюда footer таблицы, как и следовало ожидать, или чуть ниже заголовка таблицы (браузер все равно отобразит его внизу таблицы).</li>
+ <li>Элементом <code>&lt;tfoot&gt;</code> нужно обернуть ту часть, которая относится к footer таблицы — например, это может быть последняя строка в которой отражаются суммы по столбцам таблицы. Вы можете включить сюда footer таблицы, как и следовало ожидать, или чуть ниже заголовка таблицы (браузер всё равно отобразит его внизу таблицы).</li>
<li>Элементом <code>&lt;tbody&gt;</code> необходимо обернуть остальную часть содержимого таблицы которая не находится в header или footer таблицы. Этот блок располагают ниже заголовка таблицы или иногда footer таблицы, зависит от того какую структуру вы решите использовать (читать выше по тексту).</li>
</ul>
@@ -440,7 +440,7 @@ tfoot {
<h2 id="Заключение">Заключение</h2>
-<p>Есть ещё некоторые вещи которые можно узнать о HTML таблицах, но мы действительно дали все что нужно на настоящий момент. Дальше вы возможно захотите больше узнать о стилизации HTML таблиц, посмотрите <a href="/en-US/docs/Learn/CSS/Styling_boxes/Styling_tables">Styling Tables</a>.</p>
+<p>Есть ещё некоторые вещи которые можно узнать о HTML таблицах, но мы действительно дали всё что нужно на настоящий момент. Дальше вы возможно захотите больше узнать о стилизации HTML таблиц, посмотрите <a href="/en-US/docs/Learn/CSS/Styling_boxes/Styling_tables">Styling Tables</a>.</p>
<div>{{PreviousMenuNext("Learn/HTML/Tables/Basics", "Learn/HTML/Tables/Structuring_planet_data", "Learn/HTML/Tables")}}</div>
diff --git a/files/ru/learn/html/tables/basics/index.html b/files/ru/learn/html/tables/basics/index.html
index 08a1767593..e90650110a 100644
--- a/files/ru/learn/html/tables/basics/index.html
+++ b/files/ru/learn/html/tables/basics/index.html
@@ -102,7 +102,7 @@ translation_of: Learn/HTML/Tables/Basics
<p>Не питайте ложных иллюзий - чтобы эффективно представлять таблицы в веб, необходимо придать им хорошую структуру в HTML и применить к ним таблицы стилей (<a href="/en-US/docs/Learn/CSS">CSS</a>). В данном разделе мы сфокусируемся на HTML, чтобы узнать о том, что касается CSS, вам надо обратиться к статье <a href="/en-US/docs/Learn/CSS/Styling_boxes/Styling_tables">Стилизация таблиц</a>.</p>
-<p>В этом разделе мы не фокусируемся на CSS, но все же дали простейшую таблицу стилей CSS, чтобы сделать таблицы более читабельными. Эту таблицу стилей можно найти <a href="https://github.com/mdn/learning-area/blob/master/html/tables/basic/minimal-table.css">здесь</a>, можно также использовать <a href="https://github.com/mdn/learning-area/blob/master/html/tables/basic/blank-template.html">шаблон HTML</a>, применяющий эту стаблицу стилей — вместе они дадут вам хорошую основу для экспериментов с таблицами HTML.</p>
+<p>В этом разделе мы не фокусируемся на CSS, но всё же дали простейшую таблицу стилей CSS, чтобы сделать таблицы более читабельными. Эту таблицу стилей можно найти <a href="https://github.com/mdn/learning-area/blob/master/html/tables/basic/minimal-table.css">здесь</a>, можно также использовать <a href="https://github.com/mdn/learning-area/blob/master/html/tables/basic/blank-template.html">шаблон HTML</a>, применяющий эту стаблицу стилей — вместе они дадут вам хорошую основу для экспериментов с таблицами HTML.</p>
<div class="note">
<p><strong>Примечание</strong>: Посмотрите также <a href="http://mdn.github.io/learning-area/html/tables/basic/personal-pronouns-styled.html">таблицу personal_pronouns с применённым к ней стилем</a>, чтобы получить представление о том, как она выглядит.</p>
@@ -110,7 +110,7 @@ translation_of: Learn/HTML/Tables/Basics
<h3 id="Когда_не_надо_использовать_таблицы_HTML">Когда не надо использовать таблицы HTML?</h3>
-<p>HTML-таблицы следует использовать для табличных данных — это то, для чего они предназначены. К сожалению, многие используют таблицы HTML для оформления веб-страниц, например, одна строка для заголовка, одна для содержимого, одна для сносок, и тому подобное. Подробнее об этом можно узнать в разделе <a href="/ru/docs/Learn/Доступность/HTML#Вёрстка">Вёрстка</a> на <a href="/ru/docs/Learn/Доступность">Начальном обучающем модуле доступности</a>. Это происходило из-за плохой поддержки CSS в разных браузерах; в наше время такое встречается гораздо реже, но иногда все же попадается.</p>
+<p>HTML-таблицы следует использовать для табличных данных — это то, для чего они предназначены. К сожалению, многие используют таблицы HTML для оформления веб-страниц, например, одна строка для заголовка, одна для содержимого, одна для сносок, и тому подобное. Подробнее об этом можно узнать в разделе <a href="/ru/docs/Learn/Доступность/HTML#Вёрстка">Вёрстка</a> на <a href="/ru/docs/Learn/Доступность">Начальном обучающем модуле доступности</a>. Это происходило из-за плохой поддержки CSS в разных браузерах; в наше время такое встречается гораздо реже, но иногда всё же попадается.</p>
<p>Короче говоря, использование таблиц в целях оформления вместо <a href="/en-US/docs/Learn/CSS/CSS_layout">методов CSS</a> является плохой идеей по следующим причинам :</p>
@@ -443,7 +443,7 @@ translation_of: Learn/HTML/Tables/Basics
<p>Теперь попробуйте сами.</p>
-<p>Ниже приведена таблица уроков по языкам. В пятницу (Friday) новый класс целый день изучает голландский (Dutch),  кроме того, во вторник (Tuesday) и четверг (Thursdays) есть занятия по немецкому (German). Учительница хочет выделить столбцы, соответствующие дням, когда она преподает.</p>
+<p>Ниже приведена таблица уроков по языкам. В пятницу (Friday) новый класс целый день изучает голландский (Dutch),  кроме того, во вторник (Tuesday) и четверг (Thursdays) есть занятия по немецкому (German). Учительница хочет выделить столбцы, соответствующие дням, когда она преподаёт.</p>
<table>
<colgroup>
diff --git a/files/ru/learn/javascript/asynchronous/async_await/index.html b/files/ru/learn/javascript/asynchronous/async_await/index.html
index 4c0c08ae33..9f42afb02e 100644
--- a/files/ru/learn/javascript/asynchronous/async_await/index.html
+++ b/files/ru/learn/javascript/asynchronous/async_await/index.html
@@ -399,7 +399,7 @@ let han = new Person('Han', 'Solo', 25, 'male', ['Smuggling']);</pre>
<h2 id="Заключение">Заключение</h2>
-<p>Вот пожалуй и все - async/await позволяют писать асинхронный код, который легче читать и поддерживать. Даже учитывая, что поддержка со стороны браузеров несколько хуже, чем у promise.then, все же стоит обратить на него внимание.</p>
+<p>Вот пожалуй и все - async/await позволяют писать асинхронный код, который легче читать и поддерживать. Даже учитывая, что поддержка со стороны браузеров несколько хуже, чем у promise.then, всё же стоит обратить на него внимание.</p>
<p>{{PreviousMenuNext("Learn/JavaScript/Asynchronous/Promises", "Learn/JavaScript/Asynchronous/Choosing_the_right_approach", "Learn/JavaScript/Asynchronous")}}</p>
diff --git a/files/ru/learn/javascript/asynchronous/timeouts_and_intervals/index.html b/files/ru/learn/javascript/asynchronous/timeouts_and_intervals/index.html
index 1db889130a..dbc80a38c0 100644
--- a/files/ru/learn/javascript/asynchronous/timeouts_and_intervals/index.html
+++ b/files/ru/learn/javascript/asynchronous/timeouts_and_intervals/index.html
@@ -506,7 +506,7 @@ const result = document.querySelector('.result');</pre>
</ol>
</li>
<li>
- <p>Ниже добавьте следующую функцию. Она просто берет два числа и возвращает случайное число между ними. Это понадобится вам позже, чтобы сгенерировать случайный интервал ожидания.</p>
+ <p>Ниже добавьте следующую функцию. Она просто берёт два числа и возвращает случайное число между ними. Это понадобится вам позже, чтобы сгенерировать случайный интервал ожидания.</p>
<pre class="brush: js notranslate">function random(min,max) {
var num = Math.floor(Math.random()*(max-min)) + min;
@@ -599,7 +599,7 @@ function start() {
<p>Выполните следующие инструкции:</p>
<ol>
- <li>Во-первых, отмените анимацию спиннера с помощью {{domxref("window.cancelAnimationFrame", "cancelAnimationFrame()")}} (всегда полезно очистить ненужные процессы), и скройте контейнер счетчика.</li>
+ <li>Во-первых, отмените анимацию спиннера с помощью {{domxref("window.cancelAnimationFrame", "cancelAnimationFrame()")}} (всегда полезно очистить ненужные процессы), и скройте контейнер счётчика.</li>
<li>Затем, отобразите абзац с результатами и установите для его текстового содержимого значение "PLAYERS GO!!"  чтобы сообщить игрокам, что теперь они могут нажать свою кнопку, чтобы победить.</li>
<li>Прикрепите к документу обработчик событий <code><a href="/en-US/docs/Web/API/Document/keydown_event">keydown</a></code> . При нажатии любой кнопки запускается функция <code>keyHandler()</code>.</li>
<li>Внутри <code>keyHandler()</code>, код включает объект события в качестве параметра (представленного <code>e</code>) — его свойство {{domxref("KeyboardEvent.key", "key")}} содержит только что нажатую клавишу, и вы можете использовать это для ответа на определённые нажатия клавиш определёнными действиями.</li>
diff --git a/files/ru/learn/javascript/building_blocks/events/index.html b/files/ru/learn/javascript/building_blocks/events/index.html
index 287430e632..bfe1de068e 100644
--- a/files/ru/learn/javascript/building_blocks/events/index.html
+++ b/files/ru/learn/javascript/building_blocks/events/index.html
@@ -30,7 +30,7 @@ original_slug: Learn/JavaScript/Building_blocks/События
<h2 id="Серия_удачных_событий">Серия удачных событий</h2>
-<p>При возникновении <strong>события</strong> система генерирует сигнал, а также предоставляет механизм, с помощью которого можно автоматически предпринимать какие-либо действия (например, выполнить определённый код), когда происходит событие. Например, в аэропорту, когда взлётно-посадочная полоса свободна для взлёта самолёта, сигнал передаётся пилоту, и в результате они приступают к взлету.</p>
+<p>При возникновении <strong>события</strong> система генерирует сигнал, а также предоставляет механизм, с помощью которого можно автоматически предпринимать какие-либо действия (например, выполнить определённый код), когда происходит событие. Например, в аэропорту, когда взлётно-посадочная полоса свободна для взлёта самолёта, сигнал передаётся пилоту, и в результате они приступают к взлёту.</p>
<p><img alt="" src="https://mdn.mozillademos.org/files/17376/MDN-mozilla-events-runway.png" style="height: 443px; width: 700px;"></p>
@@ -247,7 +247,7 @@ etc.</pre>
<h2 id="Другие_концепции_событий">Другие концепции событий</h2>
-<p>Рассмотрим некоторые современные концепции, имеющие отношение к событиям. На данный момент не обязательно понимать их полностью, но представление о них поможет лучше понять некоторые модели кода, с которыми вы, вероятно, столкнетесь.</p>
+<p>Рассмотрим некоторые современные концепции, имеющие отношение к событиям. На данный момент не обязательно понимать их полностью, но представление о них поможет лучше понять некоторые модели кода, с которыми вы, вероятно, столкнётесь.</p>
<h3 id="Объекты_событий">   Объекты событий</h3>
diff --git a/files/ru/learn/javascript/client-side_web_apis/fetching_data/index.html b/files/ru/learn/javascript/client-side_web_apis/fetching_data/index.html
index da373e930c..3233a93ae6 100644
--- a/files/ru/learn/javascript/client-side_web_apis/fetching_data/index.html
+++ b/files/ru/learn/javascript/client-side_web_apis/fetching_data/index.html
@@ -242,7 +242,7 @@ myFetch.then(function(response) {
});
}</pre>
-<p>Объект ответа имеет метод {{domxref("Body.text", "text()")}}, который берет необработанные данные, содержащиеся в теле ответа, и превращает его в обычный текст, который является форматом, который мы хотим в нем А также возвращает обещание (которое разрешает полученную текстовую строку), поэтому здесь мы используем другой {{jsxref("Promise.then", ".then()")}}, внутри которого мы определяем другую функцию, которая диктует что мы хотим сделать с этой текстовой строкой. Мы просто устанавливаем свойство <code><a href="https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent">textContent</a></code> элемента {{htmlelement("pre")}} нашего стихотворения равным текстовой строке, так что это получается довольно просто.</p>
+<p>Объект ответа имеет метод {{domxref("Body.text", "text()")}}, который берёт необработанные данные, содержащиеся в теле ответа, и превращает его в обычный текст, который является форматом, который мы хотим в нем А также возвращает обещание (которое разрешает полученную текстовую строку), поэтому здесь мы используем другой {{jsxref("Promise.then", ".then()")}}, внутри которого мы определяем другую функцию, которая диктует что мы хотим сделать с этой текстовой строкой. Мы просто устанавливаем свойство <code><a href="https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent">textContent</a></code> элемента {{htmlelement("pre")}} нашего стихотворения равным текстовой строке, так что это получается довольно просто.</p>
<p>Также стоит отметить, что вы можете напрямую связывать несколько блоков обещаний (<code>.then()</code>, но есть и другие типы) на конце друг друга, передавая результат каждого блока следующему блоку по мере продвижения по цепочке , Это делает обещания очень мощными.</p>
diff --git a/files/ru/learn/javascript/first_steps/a_first_splash/index.html b/files/ru/learn/javascript/first_steps/a_first_splash/index.html
index 8ea9bbc299..46db3d2b70 100644
--- a/files/ru/learn/javascript/first_steps/a_first_splash/index.html
+++ b/files/ru/learn/javascript/first_steps/a_first_splash/index.html
@@ -531,7 +531,7 @@ greeting;</pre>
<h3 id="События_Events">События (Events)</h3>
-<p><span id="result_box" lang="ru"><span>На данный момент у нас есть хорошо реализованная функция <code>checkGuess()</code>, но она ничего не сделает, потому что мы ещё не вызвали ее.</span> <span>В идеале мы хотим вызывать её во время нажатия кнопки «</span></span> Submit guess <span lang="ru"><span>», и для этого нам нужно использовать событие.</span> <span>События - это действия, которые происходят в браузере, например, нажатие кнопки или загрузка страницы или воспроизведение видео, в ответ на которые мы можем запускать блоки кода.</span> <span>Конструкции, которые прослушивают событие, называются <strong>прослушивателями событий</strong>, а блоки кода, выполняемые в ответ на срабатывание событий, называются <strong>обработчиками событий</strong>.</span></span></p>
+<p><span id="result_box" lang="ru"><span>На данный момент у нас есть хорошо реализованная функция <code>checkGuess()</code>, но она ничего не сделает, потому что мы ещё не вызвали её.</span> <span>В идеале мы хотим вызывать её во время нажатия кнопки «</span></span> Submit guess <span lang="ru"><span>», и для этого нам нужно использовать событие.</span> <span>События - это действия, которые происходят в браузере, например, нажатие кнопки или загрузка страницы или воспроизведение видео, в ответ на которые мы можем запускать блоки кода.</span> <span>Конструкции, которые прослушивают событие, называются <strong>прослушивателями событий</strong>, а блоки кода, выполняемые в ответ на срабатывание событий, называются <strong>обработчиками событий</strong>.</span></span></p>
<p><span id="result_box" lang="ru"><span>Добавьте следующую строку ниже закрывающей фигурной скобки функции <code>checkGuess()</code>:</span></span></p>
diff --git a/files/ru/learn/javascript/first_steps/math/index.html b/files/ru/learn/javascript/first_steps/math/index.html
index 0f980771fb..3bd91ee39a 100644
--- a/files/ru/learn/javascript/first_steps/math/index.html
+++ b/files/ru/learn/javascript/first_steps/math/index.html
@@ -60,7 +60,7 @@ original_slug: Learn/JavaScript/Первые_шаги/Math
<p><strong>Прежде чем взорвётся ваш мозг, остановитесь прямо здесь и сейчас!</strong> </p>
-<p>Во-первых, мы просто будем придерживаться десятичных чисел на протяжении всего курса; вы редко когда будете сталкиваться с необходимостью думать в других числовых системах, если вообще когда-либо с ней столкнетесь.</p>
+<p>Во-первых, мы просто будем придерживаться десятичных чисел на протяжении всего курса; вы редко когда будете сталкиваться с необходимостью думать в других числовых системах, если вообще когда-либо с ней столкнётесь.</p>
<p>Во-вторых, в отличие от некоторых других языков программирования, JavaScript имеет только один тип данных для чисел, как вы догадались это {{jsxref("Number")}}. Это означает, независимо от типа чисел, с которыми вы работаете в JavaScript, обрабатывать вы их будете точно так же.</p>
@@ -368,7 +368,7 @@ x *= y; // x содержит значение 12</pre>
</table>
<div class="note">
-<p><strong>Заметка</strong>: вы можете заметить, что некоторые люди используют <code>==</code> и <code>!=</code> в их программах для сравнения на равенство и неравенство — это валидные JavaScript-операторы, но они отличаются от <code>===</code>/<code>!==</code> — первая пара проверяет на равенство/неравенство значений, не рассматривая их типы. Вторая пара - строгая версия первой, которая проверяет типы операндов. При использовании строгой версии выявляется больше ошибок, поэтому мы рекомендуем использовать именно ее.</p>
+<p><strong>Заметка</strong>: вы можете заметить, что некоторые люди используют <code>==</code> и <code>!=</code> в их программах для сравнения на равенство и неравенство — это валидные JavaScript-операторы, но они отличаются от <code>===</code>/<code>!==</code> — первая пара проверяет на равенство/неравенство значений, не рассматривая их типы. Вторая пара - строгая версия первой, которая проверяет типы операндов. При использовании строгой версии выявляется больше ошибок, поэтому мы рекомендуем использовать именно её.</p>
</div>
<p>Если вы попробуете использовать эти операторы в консоли, вы увидите, что все они возвращают значения <code>true</code>/<code>false</code> — о типе данных <code>boolean</code> мы писали в прошлой статье. С их помощью мы можем принимать решения в нашей программе, например:</p>
diff --git a/files/ru/learn/javascript/first_steps/variables/index.html b/files/ru/learn/javascript/first_steps/variables/index.html
index c16ad7c214..cd0dad82d1 100644
--- a/files/ru/learn/javascript/first_steps/variables/index.html
+++ b/files/ru/learn/javascript/first_steps/variables/index.html
@@ -231,7 +231,7 @@ myAge;</pre>
<p>Скорее всего, так вы будете писать большую часть времени, так как запись и выполнения кода с одно строки происходит быстрее, чем выполнение двух действий на двух отдельных строках.</p>
<div class="note">
-<p><strong>Заметка</strong>: Если вы пишете многострочную программу JavaScript, которая объявляет и инициализирует (задаёт значение) переменную, вы можете объявить её после её инициализации, и она все равно будет работать. Это связано с тем, что объявления переменных обычно выполняются первыми, прежде чем остальная часть кода будет выполнена. Это называется <strong>hoisting </strong>- прочитайте <a href="/en-US/docs/Web/JavaScript/Reference/Statements/var#var_hoisting">var hoisting</a> для более подробной информации по этому вопросу.</p>
+<p><strong>Заметка</strong>: Если вы пишете многострочную программу JavaScript, которая объявляет и инициализирует (задаёт значение) переменную, вы можете объявить её после её инициализации, и она всё равно будет работать. Это связано с тем, что объявления переменных обычно выполняются первыми, прежде чем остальная часть кода будет выполнена. Это называется <strong>hoisting </strong>- прочитайте <a href="/en-US/docs/Web/JavaScript/Reference/Statements/var#var_hoisting">var hoisting</a> для более подробной информации по этому вопросу.</p>
</div>
<h2 id="Обновление_переменной">Обновление переменной</h2>
@@ -243,7 +243,7 @@ myAge = 40;</pre>
<h3 id="Правила_именования_переменных">Правила именования переменных</h3>
-<p>Вы можете назвать переменную как угодно, но есть ограничения. Как правило, вы должны придерживаться только латинских символов (0-9, a-z, A-Z) и символа подчеркивания.</p>
+<p>Вы можете назвать переменную как угодно, но есть ограничения. Как правило, вы должны придерживаться только латинских символов (0-9, a-z, A-Z) и символа подчёркивания.</p>
<ul>
<li>Не рекомендуется использование других символов, потому что они могут вызывать ошибки или быть непонятными для международной аудитории.</li>
@@ -357,7 +357,7 @@ myNumberArray[2]; // should return 40</pre>
<pre class="brush: js notranslate">var myString = 'Привет';</pre>
-<p>Он все равно будет строкой, даже если он содержит числа, поэтому будьте осторожны:</p>
+<p>Он всё равно будет строкой, даже если он содержит числа, поэтому будьте осторожны:</p>
<pre class="brush: js notranslate">var myNumber = '500'; // упс, это все ещё строка (string)
typeof(myNumber);
diff --git a/files/ru/learn/javascript/first_steps/what_is_javascript/index.html b/files/ru/learn/javascript/first_steps/what_is_javascript/index.html
index 114f4601ba..62370e6f3e 100644
--- a/files/ru/learn/javascript/first_steps/what_is_javascript/index.html
+++ b/files/ru/learn/javascript/first_steps/what_is_javascript/index.html
@@ -32,7 +32,7 @@ original_slug: Learn/JavaScript/Первые_шаги/What_is_JavaScript
<ul>
<li>{{glossary("HTML")}} - это язык разметки, который мы используем для визуального и смыслового структурирования нашего web контента, например, определяем параграфы, заголовки, таблицы данных, или вставляем изображения и видео на страницу.</li>
<li>{{glossary("CSS")}} - это язык стилей с помощью которого мы придаём стиль отображения нашего HTML контента, например придаём цвет фону (background) и шрифту, придаём контенту многоколоночный вид.</li>
- <li>{{glossary("JavaScript")}} язык программирования, который позволяет Вам создать динамически обновляемый контент, управляет мультимедиа, анимирует изображения, впрочем, делает всё, что угодно. Окей, не все, что угодно, но все равно, это удивительно, что можно достичь с помощью нескольких строк JavaScript кода.</li>
+ <li>{{glossary("JavaScript")}} язык программирования, который позволяет Вам создать динамически обновляемый контент, управляет мультимедиа, анимирует изображения, впрочем, делает всё, что угодно. Окей, не все, что угодно, но всё равно, это удивительно, что можно достичь с помощью нескольких строк JavaScript кода.</li>
</ul>
<p>Три слоя прекрасно выстраиваются друг над другом. Возьмём простой текст для примера. Для придания структуры и смыслового назначения тексту, разметим его с помощью HTML:</p>
@@ -126,7 +126,7 @@ function updateName() {
<p>В этой главе мы рассмотрим код и увидим что же действительно происходит, когда на странице запускается JavaScript.</p>
-<p>Давайте составим краткий бриф, что же происходит когда мы загружаем страничку в браузере (первое упоминание в статье <a href="/en-US/Learn/CSS/Introduction_to_CSS/How_CSS_works#How_does_CSS_actually_work">Как работает CSS</a>). Когда вы загружаете страничку в браузере, вы запускаете ваш код (HTML, CSS и JavaScript) внутри исполняемой среды (внутри вкладки браузера). Это как будто фабрика берет сырьё (некий код) и выдаёт продукцию (веб-страничку).</p>
+<p>Давайте составим краткий бриф, что же происходит когда мы загружаем страничку в браузере (первое упоминание в статье <a href="/en-US/Learn/CSS/Introduction_to_CSS/How_CSS_works#How_does_CSS_actually_work">Как работает CSS</a>). Когда вы загружаете страничку в браузере, вы запускаете ваш код (HTML, CSS и JavaScript) внутри исполняемой среды (внутри вкладки браузера). Это как будто фабрика берёт сырьё (некий код) и выдаёт продукцию (веб-страничку).</p>
<p><img alt="" src="https://mdn.mozillademos.org/files/13504/execution.png" style="display: block; margin: 0 auto;"></p>
diff --git a/files/ru/learn/javascript/objects/object-oriented_js/index.html b/files/ru/learn/javascript/objects/object-oriented_js/index.html
index 490f68d94c..4bbd0f0134 100644
--- a/files/ru/learn/javascript/objects/object-oriented_js/index.html
+++ b/files/ru/learn/javascript/objects/object-oriented_js/index.html
@@ -38,7 +38,7 @@ original_slug: Learn/JavaScript/Объекты/Object-oriented_JS
<p>Начнём с упрощённого высокоуровневого представления о том, что такое <em>объектно-ориентированное программирование</em> <em>(ООП)</em>. Мы говорим упрощённого, потому что ООП может быстро стать очень сложным, и если сейчас дать полный курс, вероятно, можно запутать больше, чем помочь. Основная идея ООП заключается в том, что мы используем объекты для отображения моделей из реального мира в наших программах и/или упрощения доступа к функциям, которые в противном случае было бы трудно или невозможно использовать.</p>
-<p>Объекты могут содержать данные и код, представляющие информацию о том, что вы пытаетесь смоделировать, а также о том, какие у этих объектов должны быть функциональные возможности или поведение. Данные объекта (а часто так же и функции) могут быть точно сохранены (официальный термин "<strong>инкапсулированы"</strong>) внутри пакета объекта, упрощая структуру и доступ к ним. Пакету объекта может быть присвоено определённое имя, на которое можно сослаться и которое иногда называют <strong>пространством имен.</strong> Объекты также широко используются в качестве хранилищ данных, которые могут быть легко отправлены по сети.</p>
+<p>Объекты могут содержать данные и код, представляющие информацию о том, что вы пытаетесь смоделировать, а также о том, какие у этих объектов должны быть функциональные возможности или поведение. Данные объекта (а часто так же и функции) могут быть точно сохранены (официальный термин "<strong>инкапсулированы"</strong>) внутри пакета объекта, упрощая структуру и доступ к ним. Пакету объекта может быть присвоено определённое имя, на которое можно сослаться и которое иногда называют <strong>пространством имён.</strong> Объекты также широко используются в качестве хранилищ данных, которые могут быть легко отправлены по сети.</p>
<h3 id="Определение_шаблона_объекта">Определение шаблона объекта</h3>
diff --git a/files/ru/learn/server-side/django/admin_site/index.html b/files/ru/learn/server-side/django/admin_site/index.html
index 9df48c1528..c5842f12c3 100644
--- a/files/ru/learn/server-side/django/admin_site/index.html
+++ b/files/ru/learn/server-side/django/admin_site/index.html
@@ -98,7 +98,7 @@ admin.site.register(BookInstance)
<p><img alt="Admin Site - Book Edit" src="https://mdn.mozillademos.org/files/13977/admin_book_modify.png" style="border-style: solid; border-width: 1px; display: block; height: 780px; margin: 0px auto; width: 841px;"></p>
-<p>Теперь перейдите назад на страницу <strong>Home </strong>(используя ссылку <em>Home</em> в навигационной цепочке вверху страницы) и просмотрите списки <strong>Author</strong> и <strong>Genre</strong>. В них уже должно быть несколько элементов, созданных при добавлении новых книг. Если хотите, добавьте еще.</p>
+<p>Теперь перейдите назад на страницу <strong>Home </strong>(используя ссылку <em>Home</em> в навигационной цепочке вверху страницы) и просмотрите списки <strong>Author</strong> и <strong>Genre</strong>. В них уже должно быть несколько элементов, созданных при добавлении новых книг. Если хотите, добавьте ещё.</p>
<p>Однако у вас не будет ни одного экземпляра книги, потому что они не создаются из модели <code>Book </code>(хотя можно создать книгу из модели <code>BookInstance</code> — такова природа поля <code>ForeignKey</code>). Для отображения страницы <em>Add book instance </em>(см. рисунок ниже)<em> </em>вернитесь на страницу <em>Home</em>  и нажмите кнопку <strong>Add</strong>. Обратите внимание на длинный уникальный Id для идентификации конкретного экземпляра книги в библиотеке.</p>
@@ -242,7 +242,7 @@ class BookInstanceAdmin(admin.ModelAdmin):
<p>По умолчанию в представлениях деталей отображаются все поля по вертикали в порядке их объявления в модели. Вы можете изменить порядок декларации, какие поля отображаются (или исключены), используются ли разделы для организации информации, отображаются ли поля горизонтально или вертикально, и даже какие виджеты редактирования используются в админ-формах.</p>
<div class="note">
-<p><strong>Примечание:</strong> Модели LocalLibrary относительно просты, поэтому нам не нужно менять макет, но мы все равно внесём некоторые изменения, просто чтобы показать вам, как это сделать.</p>
+<p><strong>Примечание:</strong> Модели LocalLibrary относительно просты, поэтому нам не нужно менять макет, но мы всё равно внесём некоторые изменения, просто чтобы показать вам, как это сделать.</p>
</div>
<h4 id="Управление_отображаемыми_и_вложенными_полями">Управление отображаемыми и вложенными полями</h4>
diff --git a/files/ru/learn/server-side/django/authentication/index.html b/files/ru/learn/server-side/django/authentication/index.html
index 636fc0e94b..4ecc14829b 100644
--- a/files/ru/learn/server-side/django/authentication/index.html
+++ b/files/ru/learn/server-side/django/authentication/index.html
@@ -133,7 +133,7 @@ user.save()
<p>В этом разделе мы покажем, как интегрировать систему по умолчанию в Сайт LocalLibrary и создать шаблоны.  Мы поместим их в основные URL проекта.</p>
<div class="note">
-<p><strong>Заметка</strong>: Вы не должны использовать этот код, но вполне вероятно, что вы хотите, потому что это делает вещи намного проще. Вам почти наверняка потребуется изменить код обработки формы, если вы измените свою модель пользователя (сложная тема!) но даже в этом случае вы все равно сможете использовать функции просмотра запасов.</p>
+<p><strong>Заметка</strong>: Вы не должны использовать этот код, но вполне вероятно, что вы хотите, потому что это делает вещи намного проще. Вам почти наверняка потребуется изменить код обработки формы, если вы измените свою модель пользователя (сложная тема!) но даже в этом случае вы всё равно сможете использовать функции просмотра запасов.</p>
</div>
<div class="note">
@@ -282,7 +282,7 @@ LOGIN_REDIRECT_URL = '/'
<h3 id="Шаблон_сброса_пароля">Шаблон сброса пароля</h3>
-<p><span id="result_box" lang="ru"><span>Система сброса пароля по умолчанию использует электронную почту, чтобы отправить пользователю ссылку на сброс.</span> <span>Вам необходимо создать формы, чтобы получить адрес электронной почты пользователя, отправить электронное письмо, разрешить им вводить новый пароль и отметить, когда весь процесс будет завершен.</span><br>
+<p><span id="result_box" lang="ru"><span>Система сброса пароля по умолчанию использует электронную почту, чтобы отправить пользователю ссылку на сброс.</span> <span>Вам необходимо создать формы, чтобы получить адрес электронной почты пользователя, отправить электронное письмо, разрешить им вводить новый пароль и отметить, когда весь процесс будет завершён.</span><br>
<br>
<span>В качестве отправной точки можно использовать следующие шаблоны.</span></span></p>
@@ -657,7 +657,7 @@ class MyView(PermissionRequiredMixin, View):
<h2 id="Испытайте_себя">Испытайте себя</h2>
-<p> Ранее в этой статье мы показали вам, как создать страницу для текущего пользователя, в которой перечислены книги, которые они заимствовали. Теперь задача состоит в том, чтобы создать аналогичную страницу, которая видна только для библиотекарей, которая отображает  <em>все</em> книги, которые были заимствованы, и которая показывает имя каждого заемщика.</p>
+<p> Ранее в этой статье мы показали вам, как создать страницу для текущего пользователя, в которой перечислены книги, которые они заимствовали. Теперь задача состоит в том, чтобы создать аналогичную страницу, которая видна только для библиотекарей, которая отображает  <em>все</em> книги, которые были заимствованы, и которая показывает имя каждого заёмщика.</p>
<p> Вы должны следовать той же схеме, что и для другого представления. Главное отличие состоит в том, что вам нужно ограничить представление только библиотекарями. Вы можете сделать это на основе того, является ли пользователь сотрудником (декоратор функции:  <code>staff_member_required</code>, переменная шаблона: <code>user.is_staff</code>) но мы рекомендуем вам вместо этого использовать  <code>can_mark_returned</code> разрешения и <code>PermissionRequiredMixin</code>, как описано в предыдущем разделе.</p>
diff --git a/files/ru/learn/server-side/django/deployment/index.html b/files/ru/learn/server-side/django/deployment/index.html
index 7fc4e1c101..1a4227c25d 100644
--- a/files/ru/learn/server-side/django/deployment/index.html
+++ b/files/ru/learn/server-side/django/deployment/index.html
@@ -38,7 +38,7 @@ original_slug: Learn/Server-side/Django/Разворачивание
<li>Сделать несколько изменений в настройках проекта.</li>
<li>Выбрать/Настроить окружение для хостинга приложения Django.</li>
<li>Выбрать/Настроить окружение для размещения статических файлов.</li>
- <li>В целях обслуживания сайта настроить инфраструктуру для его развертывания.</li>
+ <li>В целях обслуживания сайта настроить инфраструктуру для его развёртывания.</li>
</ul>
<p>Данное руководство предоставляет небольшой обзор выбора хостинга, приготовления сайта к публичному размещению, а также практический пример установки сайта LocalLibrary на облачный сервис <a href="https://www.heroku.com/">Heroku</a>.</p>
@@ -68,7 +68,7 @@ original_slug: Learn/Server-side/Django/Разворачивание
<p><strong>Примечание:</strong> Готовые окружения могут сделать настройку вашего веб-сайта очень простой задачей, поскольку они имеют минимальную конфигурацию, однако, либо количество доступных опций может быть недостаточным, или они будут соответствовать устаревшей операционной системе. Часто, более предпочтительно установить необходимые компоненты самостоятельно, таким образом вы получите то, что вам необходимо, а в последующем, при обновлении системы, уже будете знать что нужно делать!</p>
</div>
-<p>Некоторые провайдеры поддерживают Django как часть своего предложения <em>Платформа как Сервис (Platform as a Service</em> - PaaS). При данном виде хостинга вам не нужно беспокоиться о большей части окружения (веб-сервере, сервере приложений, балансировщике загрузки), так как сама платформа берет это на себя (включая все моменты, касающиеся роста и развития вашего приложения). В данном случае развёртывание приложения является достаточно простой задачей, - вам нужно сконцентрироваться только на вашем приложении, а не на инфраструктуре.</p>
+<p>Некоторые провайдеры поддерживают Django как часть своего предложения <em>Платформа как Сервис (Platform as a Service</em> - PaaS). При данном виде хостинга вам не нужно беспокоиться о большей части окружения (веб-сервере, сервере приложений, балансировщике загрузки), так как сама платформа берёт это на себя (включая все моменты, касающиеся роста и развития вашего приложения). В данном случае развёртывание приложения является достаточно простой задачей, - вам нужно сконцентрироваться только на вашем приложении, а не на инфраструктуре.</p>
<p>Некоторые разработчики выбирают более гибкое решение, предоставляемое IaaS, в то время как другие предпочитают иметь наименьшие накладные расходы и простое масштабирование, предоставляемое PaaS. Когда вы только начинаете, то система типа PaaS является предпочтительной и это именно то, что мы будем использовать в данном руководстве.</p>
diff --git a/files/ru/learn/server-side/django/development_environment/index.html b/files/ru/learn/server-side/django/development_environment/index.html
index 6fc9ed97a5..199f16badb 100644
--- a/files/ru/learn/server-side/django/development_environment/index.html
+++ b/files/ru/learn/server-side/django/development_environment/index.html
@@ -79,7 +79,7 @@ translation_of: Learn/Server-side/Django/development_environment
<h4 id="Какую_базу_данных_выбрать">Какую базу данных выбрать?</h4>
-<p>Django поддерживает 4 основных базы данных (PostgreSQL, MySQL, Oracle и SQLite), также есть публичные библиотеки, которые предоставляют разные уровни поддержки других SQL и NoSQL баз данных. Мы рекомендуем вам выбрать одинаковую БД для обеих рабочей и разрабатываемой сред (несмотря на  то, что Django нивелирует множество различий баз данных при помощи Object-Relational Mapper (ORM), все равно возможны потенциальные <a href="https://docs.djangoproject.com/en/2.0/ref/databases/">проблемы</a>, которых лучше избегать.</p>
+<p>Django поддерживает 4 основных базы данных (PostgreSQL, MySQL, Oracle и SQLite), также есть публичные библиотеки, которые предоставляют разные уровни поддержки других SQL и NoSQL баз данных. Мы рекомендуем вам выбрать одинаковую БД для обеих рабочей и разрабатываемой сред (несмотря на  то, что Django нивелирует множество различий баз данных при помощи Object-Relational Mapper (ORM), всё равно возможны потенциальные <a href="https://docs.djangoproject.com/en/2.0/ref/databases/">проблемы</a>, которых лучше избегать.</p>
<p>Для данной статьи (и большей части модуля) мы будем использовать базу данных <em>SQLite</em>, которая сохраняет свои данные в файл. SQLite предназначен для использования в качестве облегчённой базы данных и не может поддерживать высокий уровень параллелизма. Это, однако, отличный выбор для приложений, которые в основном предназначены только для чтения.</p>
@@ -333,7 +333,7 @@ py -3 -m django --version
<h2 id="Проверка_вашей_установки">Проверка вашей установки</h2>
-<p>Указанная выше проверка работает, но не представляет особого интереса.Более интересная проверка заключается в создании шаблона проекта и проверки его работы. Для её выполнения перейдите в командной строке/терминале в место, где планируете сохранять приложения Django. Создайте папку для теста и перейдите в нее.</p>
+<p>Указанная выше проверка работает, но не представляет особого интереса.Более интересная проверка заключается в создании шаблона проекта и проверки его работы. Для её выполнения перейдите в командной строке/терминале в место, где планируете сохранять приложения Django. Создайте папку для теста и перейдите в неё.</p>
<pre class="notranslate">mkdir django_test
cd django_test
diff --git a/files/ru/learn/server-side/django/forms/index.html b/files/ru/learn/server-side/django/forms/index.html
index d43c505096..11078b3b31 100644
--- a/files/ru/learn/server-side/django/forms/index.html
+++ b/files/ru/learn/server-side/django/forms/index.html
@@ -38,7 +38,7 @@ translation_of: Learn/Server-side/Django/Forms
<p><img alt="Admin Site - Book Add" src="https://mdn.mozillademos.org/files/13979/admin_book_add.png" style="border-style: solid; border-width: 1px; display: block; margin: 0px auto;"></p>
-<p>Работа с формами может быть достаточно сложной! Разработчикам надо описать форму на HTML, проверить её валидность, а также, на стороне сервера, проверять введённые пользователем данные (а возможно и на стороне клиента), далее, в случае возникновения ошибок необходимо опять показать пользователю форму и, при этом, указать на то, что пошло не так, в случае же успеха проделать с данными необходимые операции и каким-то образом проинформировать об этом пользователя. Django, при работе с формами, берет большую часть, описанной выше работы, на себя. Он предоставляет фреймворк, который позволяет вам определять форму и её поля программно, а затем использовать эти объекты и для генерации непосредственно кода HTML-формы, и для контроля за процессом валидации и других пользовательский взаимодействий с формой.</p>
+<p>Работа с формами может быть достаточно сложной! Разработчикам надо описать форму на HTML, проверить её валидность, а также, на стороне сервера, проверять введённые пользователем данные (а возможно и на стороне клиента), далее, в случае возникновения ошибок необходимо опять показать пользователю форму и, при этом, указать на то, что пошло не так, в случае же успеха проделать с данными необходимые операции и каким-то образом проинформировать об этом пользователя. Django, при работе с формами, берёт большую часть, описанной выше работы, на себя. Он предоставляет фреймворк, который позволяет вам определять форму и её поля программно, а затем использовать эти объекты и для генерации непосредственно кода HTML-формы, и для контроля за процессом валидации и других пользовательский взаимодействий с формой.</p>
<p>В данной части руководства мы покажем вам несколько способов создания и работы с формами и, в частности, как применение обобщённых классов работы с формой могут значительно уменьшить необходимый объем работы. Кроме того, мы расширим возможности нашего сайта <em>LocalLibrary,</em> путём добавления функционала для библиотекарей, который будет позволять им обновлять информацию - добавим страницы для создания, редактирования, удаления книг и авторов (воспроизведём и расширим стандартные возможности административной части сайта).</p>
@@ -93,7 +93,7 @@ translation_of: Learn/Server-side/Django/Forms
</li>
<li>Получение данных из формы (из HTML-формы) со стороны клиента и связывание их с формой (классом формы) на стороне сервера.
<ul>
- <li>Связывание данных с формой означает, что данные, введённые пользователем, а также возможные ошибки, при переотрисовке в дальнейшем, будут относиться именно к данной форме, а не к какой-либо еще.</li>
+ <li>Связывание данных с формой означает, что данные, введённые пользователем, а также возможные ошибки, при переотрисовке в дальнейшем, будут относиться именно к данной форме, а не к какой-либо ещё.</li>
</ul>
</li>
<li>Очистка и валидация данных.
diff --git a/files/ru/learn/server-side/django/generic_views/index.html b/files/ru/learn/server-side/django/generic_views/index.html
index 2cb9c4eab0..b23f7ab83e 100644
--- a/files/ru/learn/server-side/django/generic_views/index.html
+++ b/files/ru/learn/server-side/django/generic_views/index.html
@@ -184,7 +184,7 @@ class BookListView(generic.ListView):
<p>Кроме того, внутри нашего шаблона, мы можем вызывать <em>функции</em> модели — в данном случае, мы вызываем <code>Book.get_absolute_url()</code> для получения URL-адреса, который мы используем для показа детальной информации о книге. Данный вызов работает только для функции у которой нет аргументов (в шаблоне не существует возможности передать аргументы в функцию!)</p>
<div class="note">
-<p><strong>Примечание</strong>: Мы должны быть достаточно осмотрительными для того, чтобы избегать "сторонних эффектов" когда мы вызываем функции из шаблона. В данном случае мы просто получаем URL-адрес, но функции могут делать все что угодно — мы не хотели бы "убить" наша базу данных (например) просто отрендеривая наш шаблон!</p>
+<p><strong>Примечание</strong>: Мы должны быть достаточно осмотрительными для того, чтобы избегать "сторонних эффектов" когда мы вызываем функции из шаблона. В данном случае мы просто получаем URL-адрес, но функции могут делать всё что угодно — мы не хотели бы "убить" наша базу данных (например) просто отрендеривая наш шаблон!</p>
</div>
<h4 id="Обновление_базового_шаблона">Обновление базового шаблона</h4>
diff --git a/files/ru/learn/server-side/django/home_page/index.html b/files/ru/learn/server-side/django/home_page/index.html
index c5b6f2bbea..828917468d 100644
--- a/files/ru/learn/server-side/django/home_page/index.html
+++ b/files/ru/learn/server-side/django/home_page/index.html
@@ -319,7 +319,7 @@ def index(request):
<h2 id="Как_теперь_все_это_выглядит">Как теперь все это выглядит?</h2>
-<p>На данный момент мы должны были сделать все что необходимо, для того, чтобы показать главную страницу нашего сайта. Запустите сервер (<code>python3 manage.py runserver</code>) и введите в ваш браузер адрес <a href="http://127.0.0.1:8000/">http://127.0.0.1:8000/</a>. Если все настроено как надо, то ваш сайт должен выглядеть как показано на следующей картинке.</p>
+<p>На данный момент мы должны были сделать всё что необходимо, для того, чтобы показать главную страницу нашего сайта. Запустите сервер (<code>python3 manage.py runserver</code>) и введите в ваш браузер адрес <a href="http://127.0.0.1:8000/">http://127.0.0.1:8000/</a>. Если все настроено как надо, то ваш сайт должен выглядеть как показано на следующей картинке.</p>
<p><img alt="Index page for LocalLibrary website" src="https://mdn.mozillademos.org/files/14045/index_page_ok.png" style="border-style: solid; border-width: 1px; display: block; height: 356px; margin: 0px auto; width: 874px;"></p>
diff --git a/files/ru/learn/server-side/django/models/index.html b/files/ru/learn/server-side/django/models/index.html
index 8fa353116b..8e05924833 100644
--- a/files/ru/learn/server-side/django/models/index.html
+++ b/files/ru/learn/server-side/django/models/index.html
@@ -185,7 +185,7 @@ class MyModelName(models.Model):
<div class="note">
<p>Примечание. Предполагается, что вы будете использовать URL-адреса, например / myapplication / mymodelname / 2, для отображения отдельных записей для вашей модели (где «2» - это идентификатор для определённой записи), вам нужно будет создать URL-карту, чтобы передать ответ и идентификатор «Образцовое представление модели» (которое будет выполнять работу, необходимую для отображения записи). Вышеуказанная функция reverse () может «перевернуть» ваш URL-адрес (в приведённом выше примере с именем «model-detail-view»), чтобы создать URL-адрес правильного формата.</p>
-<p>Конечно, для выполнения этой работы вам все равно придётся писать сопоставление URL-адрес, просмотр и шаблон!</p>
+<p>Конечно, для выполнения этой работы вам всё равно придётся писать сопоставление URL-адрес, просмотр и шаблон!</p>
</div>
<p>Вы также можете определить любые другие методы, которые вам нравятся, и вызывать их из вашего кода или шаблонов (при условии, что они не принимают никаких параметров).</p>
diff --git a/files/ru/learn/server-side/django/sessions/index.html b/files/ru/learn/server-side/django/sessions/index.html
index 22b6248b35..c18053c836 100644
--- a/files/ru/learn/server-side/django/sessions/index.html
+++ b/files/ru/learn/server-side/django/sessions/index.html
@@ -48,7 +48,7 @@ original_slug: Learn/Server-side/Django/Сессии
<p>Сессии являются механизмом, который использует Django (да и весь остальной "Интернет") для отслеживания "состояния" между сайтом и каким-либо браузером. Сессии позволяют вам хранить произвольные данные браузера и получать их в тот момент, когда между данным браузером и сайтом устанавливается соединение. Данные получаются и сохраняются в сессии при помощи соответствующего "ключа".</p>
-<p>Django использует куки (cookie), которые содержат специальный <em>идентификатор сессии,</em> который выделяет среди остальных, каждый браузер и соответствующую сессию. Реальные <em>данные</em> сессии, по умолчанию, хранятся в базе данных сайта (это более безопасно, чем сохранять данные в куки, где они могут быть уязвимы для злоумышленников). Однако, у вас есть возможность настроить Django так, чтобы сохранять данные сессий в других местах (кэше, файлах, "безопасных" куки). Но все же хранение по умолчанию является хорошей и безопасной возможностью.</p>
+<p>Django использует куки (cookie), которые содержат специальный <em>идентификатор сессии,</em> который выделяет среди остальных, каждый браузер и соответствующую сессию. Реальные <em>данные</em> сессии, по умолчанию, хранятся в базе данных сайта (это более безопасно, чем сохранять данные в куки, где они могут быть уязвимы для злоумышленников). Однако, у вас есть возможность настроить Django так, чтобы сохранять данные сессий в других местах (кэше, файлах, "безопасных" куки). Но всё же хранение по умолчанию является хорошей и безопасной возможностью.</p>
<h2 id="Подключение_сессий">Подключение сессий</h2>
@@ -75,7 +75,7 @@ MIDDLEWARE = [
<p>Ниже представлены фрагменты кода, которые показывают вам как получать, задавать и удалять некоторые данные при помощи ключа "<code>my_car</code>", связанного с текущей сессией (браузером). </p>
<div class="note">
-<p><strong>Примечание</strong>: Одной из самых грандиозных вещей в Django является то, что вам не надо думать о механизме, который связывает сессию с текущим запросом в отображении. Во фрагменте ниже, все что вам надо знать, это то, что  <code>my_car</code> связана с тем браузером, который отправил текущий запрос.</p>
+<p><strong>Примечание</strong>: Одной из самых грандиозных вещей в Django является то, что вам не надо думать о механизме, который связывает сессию с текущим запросом в отображении. Во фрагменте ниже, всё что вам надо знать, это то, что  <code>my_car</code> связана с тем браузером, который отправил текущий запрос.</p>
</div>
<pre class="brush: python"># Получение значения сессии при помощи ключа(то есть, 'my_car').
diff --git a/files/ru/learn/server-side/django/testing/index.html b/files/ru/learn/server-side/django/testing/index.html
index 7721c05dc1..bb7d34ca9a 100644
--- a/files/ru/learn/server-side/django/testing/index.html
+++ b/files/ru/learn/server-side/django/testing/index.html
@@ -111,7 +111,7 @@ translation_of: Learn/Server-side/Django/Testing
    def __str__(self):
        return '%s, %s' % (self.last_name, self.first_name)</pre>
-<p>Подобным же образом вы должны убедиться, что методы <code style="font-style: normal; font-weight: normal;">get_absolute_url()</code> и <code style="font-style: normal; font-weight: normal;">__str__()</code> ведут себя как требуется, потому что они являются частью вашей бизнес логики. В случае функции <code style="font-style: normal; font-weight: normal;">get_absolute_url()</code> вы можете быть уверены, что функция из Django <code>reverse()</code> была реализована правильно и, следовательно, вы тестируете только то, чтобы соответствующий вызов в отображении был правильно определен.</p>
+<p>Подобным же образом вы должны убедиться, что методы <code style="font-style: normal; font-weight: normal;">get_absolute_url()</code> и <code style="font-style: normal; font-weight: normal;">__str__()</code> ведут себя как требуется, потому что они являются частью вашей бизнес логики. В случае функции <code style="font-style: normal; font-weight: normal;">get_absolute_url()</code> вы можете быть уверены, что функция из Django <code>reverse()</code> была реализована правильно и, следовательно, вы тестируете только то, чтобы соответствующий вызов в отображении был правильно определён.</p>
<div class="note">
<p><strong>Примечание:</strong> Проницательные читатели могут заметить, что мы можем некоторым образом ограничить дату рождения и смерти какими-то граничными значениями и выполнять проверку, чтобы дата смерти шла после рождения. В Django данное ограничение может быть добавлено к вашим классам форм (хотя вы и можете определить валидаторы для этих полей, они будут проявлять себя только на уровне форм, а не уровне модели).</p>
diff --git a/files/ru/learn/server-side/express_nodejs/forms/delete_author_form/index.html b/files/ru/learn/server-side/express_nodejs/forms/delete_author_form/index.html
index f03565426b..a277b6522c 100644
--- a/files/ru/learn/server-side/express_nodejs/forms/delete_author_form/index.html
+++ b/files/ru/learn/server-side/express_nodejs/forms/delete_author_form/index.html
@@ -80,7 +80,7 @@ exports.author_delete_post = function(req, res, next) {
<p>Сначала мы проверяем, что был предоставлен id (он отправляется через параметры тела формы, а не через версию в URL). Затем мы получаем автора и связанные с ним книги так же, как и для маршрута <code>GET</code>. Если книг нет, то удаляем объект автора и перенаправляем в список всех авторов. Если есть ещё книги, то мы просто перерисовываем форму, передавая автора и список книг, которые нужно удалить.</p>
<div class="note">
-<p><strong>Заметка:</strong> Мы можем проверить, возвращает ли вызов <code>findbyid ()</code> какой-либо результат, и если нет, немедленно отобразить список всех авторов.Для краткости мы оставили код как есть выше (он все равно вернёт список авторов, если id не будет найден, но это произойдёт после <code>findByIdAndRemove()</code>).</p>
+<p><strong>Заметка:</strong> Мы можем проверить, возвращает ли вызов <code>findbyid ()</code> какой-либо результат, и если нет, немедленно отобразить список всех авторов.Для краткости мы оставили код как есть выше (он всё равно вернёт список авторов, если id не будет найден, но это произойдёт после <code>findByIdAndRemove()</code>).</p>
</div>
<h2 class="highlight-spanned" id="View">View</h2>
@@ -119,7 +119,7 @@ block content
<p>Представление расширяет шаблон макета, переопределяя блок с именем <code>content</code>. Вверху отображаются сведения об авторе. Затем он включает условный оператор, основанный на количестве <code><strong>author_books</strong></code> (пункты <code>if</code> и <code>else</code> ).</p>
<ul>
- <li>Если есть книги, связанные с автором, то на странице перечислены книги и говорится, что они должны быть удалены, прежде чем этот <code>Author</code> может быть удален.</li>
+ <li>Если есть книги, связанные с автором, то на странице перечислены книги и говорится, что они должны быть удалены, прежде чем этот <code>Author</code> может быть удалён.</li>
<li>Если книг нет, на странице отображается запрос на подтверждение. Если нажать кнопку <strong>Delete</strong>, то id автора будет отправлен на сервер в <code>POST</code>-запросе, и запись этого автора будет удалена.</li>
</ul>
diff --git a/files/ru/learn/server-side/express_nodejs/index.html b/files/ru/learn/server-side/express_nodejs/index.html
index 21c9909faa..aa913040b9 100644
--- a/files/ru/learn/server-side/express_nodejs/index.html
+++ b/files/ru/learn/server-side/express_nodejs/index.html
@@ -12,7 +12,7 @@ translation_of: Learn/Server-side/Express_Nodejs
---
<div>{{LearnSidebar}}</div>
-<p class="summary">Express представляет собой популярный веб-фреймворк, написанный на JavaScript и работающий внутри среды исполнения node.js. Этот модуль освещает некоторые ключевые преимущества этого фреймворка, установку среды разработки и выполнение основных задач веб-разработки и развертывания.</p>
+<p class="summary">Express представляет собой популярный веб-фреймворк, написанный на JavaScript и работающий внутри среды исполнения node.js. Этот модуль освещает некоторые ключевые преимущества этого фреймворка, установку среды разработки и выполнение основных задач веб-разработки и развёртывания.</p>
<h2 id="Предварительные_требования">Предварительные требования</h2>
diff --git a/files/ru/learn/server-side/express_nodejs/routes/index.html b/files/ru/learn/server-side/express_nodejs/routes/index.html
index 65169cf637..2d8cc116bb 100644
--- a/files/ru/learn/server-side/express_nodejs/routes/index.html
+++ b/files/ru/learn/server-side/express_nodejs/routes/index.html
@@ -101,7 +101,7 @@ app.use('/wiki', wiki);</code></pre>
<h3 id="Функции_Route">Функции Route</h3>
-<p>В модуле выше определена пара типовых функций маршрута. Маршрут "about" (ещё раз показан ниже) определён при помощи метода <code>Router.get()</code>, который отвечает только на  HTTP GET-запросы. Первый аргумент метода - URL-путь, а второй -  колбэк-функция, которая будет вызвана, если получен HTTP GET-запрос с указанным путем.</p>
+<p>В модуле выше определена пара типовых функций маршрута. Маршрут "about" (ещё раз показан ниже) определён при помощи метода <code>Router.get()</code>, который отвечает только на  HTTP GET-запросы. Первый аргумент метода - URL-путь, а второй -  колбэк-функция, которая будет вызвана, если получен HTTP GET-запрос с указанным путём.</p>
<pre class="brush: js"><code>router.get('/about', function (req, res) {
res.send('About this wiki');
@@ -121,7 +121,7 @@ app.use('/wiki', wiki);</code></pre>
<h3 id="HTTP_глаголы_(действия)">HTTP глаголы (действия)</h3>
-<p>Рассмотренный пример использует метод <code>Router.get()</code> для ответа на  HTTP GET- запросы с указанным путем.</p>
+<p>Рассмотренный пример использует метод <code>Router.get()</code> для ответа на  HTTP GET- запросы с указанным путём.</p>
<p>Кроме того, <code>Router</code> обеспечивает также методы маршрутизации для других HTTP глаголов, которые обычно используются точно таким же способом: <code>post()</code>, <code>put()</code>, <code>delete()</code>, <code>options()</code>, <code>trace()</code>, <code>copy()</code>, <code>lock()</code>, <code>mkcol()</code>, <code>move()</code>, <code>purge()</code>, <code>propfind()</code>, <code>proppatch()</code>, <code>unlock()</code>, <code>report()</code>, ​​​​​​ <code>mkactivity()</code>, <code>checkout()</code>, <code>merge()</code>, <code>m-</code><code>search()</code>, <code>notify()</code>, <code>subscribe()</code>, <code>unsubscribe()</code>, <code>patch()</code>, <code>search()</code>, и <code>connect()</code>.</p>
diff --git a/files/ru/learn/server-side/express_nodejs/skeleton_website/index.html b/files/ru/learn/server-side/express_nodejs/skeleton_website/index.html
index 7f01cbf62e..9e597bb54b 100644
--- a/files/ru/learn/server-side/express_nodejs/skeleton_website/index.html
+++ b/files/ru/learn/server-side/express_nodejs/skeleton_website/index.html
@@ -254,7 +254,7 @@ GET /favicon.ico 404 34.134 ms - 1335</pre>
<pre class="notranslate"><code>DEBUG=express-locallibrary-tutorial:* npm <strong>run devstart</strong></code></pre>
<div class="note">
-<p><strong>Заметка:</strong> Сейчас после изменения любого файла проекта сервер будет перезапускаться (или можно самостоятельно перезапустить его, введя <code>rs</code> в командной строке). Вам все равно придётся обновить страницу в браузере .</p>
+<p><strong>Заметка:</strong> Сейчас после изменения любого файла проекта сервер будет перезапускаться (или можно самостоятельно перезапустить его, введя <code>rs</code> в командной строке). Вам всё равно придётся обновить страницу в браузере .</p>
<p>Теперь мы должны выполнять команду "<code>npm run </code><em>&lt;scriptname&gt;</em>" а не просто  <code>npm start</code>, поскольку "start", это, по сути, команда NPM, сопоставленная сценарию в файле package.json. Можно заменить команду в сценарии "start", но, так как мы хотим использовать nodemon только во время разработки, разумно создать новую команду сценария.</p>
</div>
diff --git a/files/ru/learn/server-side/index.html b/files/ru/learn/server-side/index.html
index ee1cb35976..e1f015984d 100644
--- a/files/ru/learn/server-side/index.html
+++ b/files/ru/learn/server-side/index.html
@@ -24,7 +24,7 @@ translation_of: Learn/Server-side
<h2 id="Программа_обучения">Программа обучения</h2>
-<p>Начинать с серверного программирования обычно легче, чем с разработки на стороне клиента, поскольку динамические веб-сайты склонны производить множество однообразных операций (извлекать данные из базы данных и помещать их на странице, подтверждать пользовательский ввод и сохранять его в базе данных, проверять пользовательские права и выполнение входа, и.т.д.) и сконструированы с использованием веб-фреймворков, которые выполняют эти и другие привычные веб-серверу операции с легкостью.</p>
+<p>Начинать с серверного программирования обычно легче, чем с разработки на стороне клиента, поскольку динамические веб-сайты склонны производить множество однообразных операций (извлекать данные из базы данных и помещать их на странице, подтверждать пользовательский ввод и сохранять его в базе данных, проверять пользовательские права и выполнение входа, и.т.д.) и сконструированы с использованием веб-фреймворков, которые выполняют эти и другие привычные веб-серверу операции с лёгкостью.</p>
<p>Общее понимание концепций программирования (или определённого программного языка) будет полезным, но не обязательным. Сходным образом, опыт программирования на клиентской стороне не требуется, но базовое знание поможет вам успешнее взаимодействовать с разработчиками клиентской стороны веб-приложения - "фронтенда".</p>
@@ -48,7 +48,7 @@ translation_of: Learn/Server-side
<dt><a href="/en-US/docs/Learn/Server-side/Django">Веб-фреймворк Django (Python)</a></dt>
<dd>Django является чрезвычайно популярным и полнофункциональным серверным веб-фреймворком, написанным на Python. Этот модуль объяснит почему Django настолько хороший серверный веб-фреймворк, как установить среду разработки и как с его помощью можно выполнять привычные задачи.</dd>
<dt><a href="/ru/docs/Learn/Server-side/Express_Nodejs">Веб-фреймворк Express (Node.js/JavaScript)</a></dt>
- <dd>Express - популярный веб-фреймворк, написанный на JavaScript и размещённый в среде окружения node.js. Модуль объясняет некоторые из ключевых преимуществ этой структуры, как настроить среду разработки и как выполнять общие задачи для веб-разработки и развертывания.</dd>
+ <dd>Express - популярный веб-фреймворк, написанный на JavaScript и размещённый в среде окружения node.js. Модуль объясняет некоторые из ключевых преимуществ этой структуры, как настроить среду разработки и как выполнять общие задачи для веб-разработки и развёртывания.</dd>
<dt><a href="https://developer.mozilla.org/ru/docs/Learn/Server-side/Node_server_without_framework">Сервер на Node без фреймворков</a></dt>
<dd>В этой статье представлен простой статический файловый сервер, построенный с использованием чистого Node.js, для тех из вас, кто не хочет использовать фреймворк.</dd>
</dl>
diff --git a/files/ru/learn/tools_and_testing/cross_browser_testing/introduction/index.html b/files/ru/learn/tools_and_testing/cross_browser_testing/introduction/index.html
index 4f02764c4f..58bd03c0c6 100644
--- a/files/ru/learn/tools_and_testing/cross_browser_testing/introduction/index.html
+++ b/files/ru/learn/tools_and_testing/cross_browser_testing/introduction/index.html
@@ -57,7 +57,7 @@ translation_of: Learn/Tools_and_testing/Cross_browser_testing/Introduction
<p>Кросс-браузерные проблемы возникают потому-что:</p>
<ul>
- <li>иногда браузеры содержат баги, или реализуют возможности по-разному. В настоящее время это не такая частая проблема, но когда IE4 и Netscape 4 конкурировали за право быть доминирующим браузером в 90-е, компании-разработчики браузеров умышленно реализовывали возможности по-своему в попытке получить конкурентное преимущество, что делало жизнь веб-разработчикам адом. Сейчас же браузеры гораздо жёстче соблюдают стандарты, но различия и баги все же иногда возникают.</li>
+ <li>иногда браузеры содержат баги, или реализуют возможности по-разному. В настоящее время это не такая частая проблема, но когда IE4 и Netscape 4 конкурировали за право быть доминирующим браузером в 90-е, компании-разработчики браузеров умышленно реализовывали возможности по-своему в попытке получить конкурентное преимущество, что делало жизнь веб-разработчикам адом. Сейчас же браузеры гораздо жёстче соблюдают стандарты, но различия и баги всё же иногда возникают.</li>
<li>браузеры имеют разную степень поддержи современных технологий. Это неизбежно, когда вы имеете дело с новейшими функциями, которые браузеры только начинают осваивать, или если вы вынуждены поддерживать очень старые браузеры, которые более не дорабатываются или которые могли быть заморожены (то есть в них не добавляют новый функционал) задолго до того, как придумали новые возможности. Например, если вы хотите использовать передовые возможности JavaScript на вашем сайте, то они могут не работать в старых браузерах. Если вам нужна поддержка старых браузеров, вы можете конвертировать ваш код под старый синтаксис, используя специальные компиляторы.</li>
<li>некоторые устройства могут иметь ограничения, из-за которых сайт работает медленно или отображается неверно. Например, если сайт был спроектирован для просмотра на десктопных устройствах, он возможно будет выглядеть мелко и трудночитаемо на мобильных устройствах. Если ваш сайт содержит множество больших анимаций, это может быть хорошо на высокопроизводительных планшетах, но может быть вялым или резким на устройствах меньшей производительности.</li>
</ul>
diff --git a/files/ru/mozilla/add-ons/webextensions/chrome_incompatibilities/index.html b/files/ru/mozilla/add-ons/webextensions/chrome_incompatibilities/index.html
index d17448989f..4ddc9ac21b 100644
--- a/files/ru/mozilla/add-ons/webextensions/chrome_incompatibilities/index.html
+++ b/files/ru/mozilla/add-ons/webextensions/chrome_incompatibilities/index.html
@@ -7,7 +7,7 @@ translation_of: Mozilla/Add-ons/WebExtensions/Chrome_incompatibilities
<p>Веб расширения разработаны с поддержкой совместимости с расширениями Chrome и Оперы на сколько это возможно. Расширения, написанные для этих браузеров, должны работать в Firefox с минимальными изменениями.</p>
-<p>Все же, Firefox на данный момент имеет поддержку только для ограниченного набора функций и API, поддержуемых в Chrome и Опере. Мы работаем над добавлением большей поддержки, но много функций пока ещё не поддерживаются и некоторые из них никогда не будут поддерживаться.</p>
+<p>Всё же, Firefox на данный момент имеет поддержку только для ограниченного набора функций и API, поддержуемых в Chrome и Опере. Мы работаем над добавлением большей поддержки, но много функций пока ещё не поддерживаются и некоторые из них никогда не будут поддерживаться.</p>
<p>Эта статья перечисляет все функции и API, которые полностью поддерживаются в <span style="line-height: 1.5;">Firefox Developer Edition (на данный момент Firefox 47). Там где функция поддерживается частично, мы указали на проблемные места.</span></p>
diff --git a/files/ru/mozilla/add-ons/webextensions/user_interface/browser_action/index.html b/files/ru/mozilla/add-ons/webextensions/user_interface/browser_action/index.html
index 6d637ce5e6..f2bb72b1ce 100644
--- a/files/ru/mozilla/add-ons/webextensions/user_interface/browser_action/index.html
+++ b/files/ru/mozilla/add-ons/webextensions/user_interface/browser_action/index.html
@@ -36,7 +36,7 @@ translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Browser_action
<pre class="brush: js line-numbers language-js"><code class="language-js">browser<span class="punctuation token">.</span>browserAction<span class="punctuation token">.</span>onClicked<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span>handleClick<span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
-<p>Если же указать в качестве реакции на нажатие всплывающее окно, то событие передано не будет. Вместо этого около кнопки отобразится всплывающее окно - отдельная маленькая страница, дальнейшее взаимодействие с пользователем берет на себя она. Подробнее этот сценарий описан на отдельной странице, посвящённой <a href="/en-US/Add-ons/WebExtensions/Popups">всплывающим окнам</a>.</p>
+<p>Если же указать в качестве реакции на нажатие всплывающее окно, то событие передано не будет. Вместо этого около кнопки отобразится всплывающее окно - отдельная маленькая страница, дальнейшее взаимодействие с пользователем берёт на себя она. Подробнее этот сценарий описан на отдельной странице, посвящённой <a href="/en-US/Add-ons/WebExtensions/Popups">всплывающим окнам</a>.</p>
<p>Все свойства кнопки на панели инструментов можно изменить программно через API <code><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/browserAction">browserAction</a></code>.</p>
diff --git a/files/ru/mozilla/add-ons/webextensions/your_second_webextension/index.html b/files/ru/mozilla/add-ons/webextensions/your_second_webextension/index.html
index 53e30de86f..c8b345e24f 100644
--- a/files/ru/mozilla/add-ons/webextensions/your_second_webextension/index.html
+++ b/files/ru/mozilla/add-ons/webextensions/your_second_webextension/index.html
@@ -126,7 +126,7 @@ cd beastify</pre>
<p>Сохраните иконку с именем "beasts-32.png" в папке "icons". Вы можете использовать <a href="https://github.com/mdn/webextensions-examples/blob/master/beastify/icons/beasts-32.png">иконку из нашего примера</a>, которая взята из набора <a href="http://www.iconbeast.com/free">IconBeast Lite </a>и используется на условиях этой <a href="http://www.iconbeast.com/faq/">лицензии</a>.</p>
-<p>Если Вы не предоставите всплывающую панель, то событие click отправляется в Ваше дополнение, когда пользователь кликает кнопку. Если Вы предоставите всплывающую панель, то событие click не отправляется, зато появляется всплывающая панель. Мы хотим панель, давайте создадим ее.</p>
+<p>Если Вы не предоставите всплывающую панель, то событие click отправляется в Ваше дополнение, когда пользователь кликает кнопку. Если Вы предоставите всплывающую панель, то событие click не отправляется, зато появляется всплывающая панель. Мы хотим панель, давайте создадим её.</p>
<h3 id="Всплывающая_панель">Всплывающая панель</h3>
diff --git a/files/ru/mozilla/firefox/index.html b/files/ru/mozilla/firefox/index.html
index 9e4cf629e6..4f90fbd4d9 100644
--- a/files/ru/mozilla/firefox/index.html
+++ b/files/ru/mozilla/firefox/index.html
@@ -62,7 +62,7 @@ translation_of: Mozilla/Firefox
<h3 id="Firefox_Extended_Support_Release_ESR">Firefox Extended Support Release (ESR)</h3>
-<p>Firefox ESR - издание с долгосрочной поддержкой для компьютеров для использования организациями, включая школы, университеты, предприятия и других лиц, которые нуждаются в расширенной поддержке массового развертывания.</p>
+<p>Firefox ESR - издание с долгосрочной поддержкой для компьютеров для использования организациями, включая школы, университеты, предприятия и других лиц, которые нуждаются в расширенной поддержке массового развёртывания.</p>
<p><a href="/ru/docs/Firefox/Firefox_ESR">Узнать больше о Firefox Extended Support Release</a>.</p>
diff --git a/files/ru/orphaned/web/html/element/element/index.html b/files/ru/orphaned/web/html/element/element/index.html
index cc146093e7..77ed826146 100644
--- a/files/ru/orphaned/web/html/element/element/index.html
+++ b/files/ru/orphaned/web/html/element/element/index.html
@@ -52,7 +52,7 @@ original_slug: Web/HTML/Element/element
<h2 id="Specifications" name="Specifications">Характеристики</h2>
-<p><code>Элемент &lt;element&gt;</code> <span id="result_box" lang="ru"><span>ранее был в черновике спецификации</span></span> <a href="http://w3c.github.io/webcomponents/spec/custom/">Настраиваемых Элементов</a>, но был удален.</p>
+<p><code>Элемент &lt;element&gt;</code> <span id="result_box" lang="ru"><span>ранее был в черновике спецификации</span></span> <a href="http://w3c.github.io/webcomponents/spec/custom/">Настраиваемых Элементов</a>, но был удалён.</p>
<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузером</h2>
diff --git a/files/ru/orphaned/web/security/information_security_basics/index.html b/files/ru/orphaned/web/security/information_security_basics/index.html
index 96088ba6e6..0ac6be99da 100644
--- a/files/ru/orphaned/web/security/information_security_basics/index.html
+++ b/files/ru/orphaned/web/security/information_security_basics/index.html
@@ -4,7 +4,7 @@ slug: orphaned/Web/Security/Information_Security_Basics
translation_of: Web/Security/Information_Security_Basics
original_slug: Web/Security/Information_Security_Basics
---
-<p><span class="seoSummary">Базовое понимание информационной безопасности, поможет обезопасить ваше программное обеспечение и сайты от уязвимостей открывающим доступ к финансовым махинациям и прочим противоправным действиям. Из этих статей вы сможете узнать все что для этого необходимо.</span> Вооружившись этой информацией, вы поймёте роль и важность безопасности начиная от цикла веб-разработки вплоть до размещения вашего контента. </p>
+<p><span class="seoSummary">Базовое понимание информационной безопасности, поможет обезопасить ваше программное обеспечение и сайты от уязвимостей открывающим доступ к финансовым махинациям и прочим противоправным действиям. Из этих статей вы сможете узнать всё что для этого необходимо.</span> Вооружившись этой информацией, вы поймёте роль и важность безопасности начиная от цикла веб-разработки вплоть до размещения вашего контента. </p>
<dl>
<dt><a href="/en-US/docs/Web/Security/Information_Security_Basics/Confidentiality,_Integrity,_and_Availability">Конфиденциальность, целостность и доступность</a></dt>
diff --git a/files/ru/orphaned/настройка_среды_разработки_расширений/index.html b/files/ru/orphaned/настройка_среды_разработки_расширений/index.html
index 2b42897a3d..cd7e585cb9 100644
--- a/files/ru/orphaned/настройка_среды_разработки_расширений/index.html
+++ b/files/ru/orphaned/настройка_среды_разработки_расширений/index.html
@@ -66,7 +66,7 @@ start "" "%ProgramFiles%\Mozilla Firefox\firefox.exe" -ProfileManager
<ol>
<li>Найдите папку с вашим профилем. Если вы не создавали его специально, браузер использует профиль по умолчанию. <a class="external" href="http://kb.mozillazine.org/Profile_folder">Как найти папку с профилем.</a></li>
- <li>Откройте папку <code>extensions</code>. Если её нет, создайте ее.</li>
+ <li>Откройте папку <code>extensions</code>. Если её нет, создайте её.</li>
<li>Создайте новый текстовый файл и поместите в него лишь путь к вашему расширению (напр., <code>C:\extensions\my_extension\</code> для Windows или <code>~/extensions/my_extension/</code> для Unix/Linux). Сохраните файл под именем, одинаковым с <code>id</code> вашего расширения.</li>
</ol>
diff --git a/files/ru/orphaned/создание_расширения/index.html b/files/ru/orphaned/создание_расширения/index.html
index bfa7397637..90197c6d9a 100644
--- a/files/ru/orphaned/создание_расширения/index.html
+++ b/files/ru/orphaned/создание_расширения/index.html
@@ -180,7 +180,7 @@ original_slug: Создание_расширения
<ol>
<li>Найдите папку с вашим профилем. Если вы не создавали его специально, браузер использует профиль по умолчанию.<br>
<a class="external" href="http://kb.mozillazine.org/Profile_folder">Как найти папку с профилем.</a></li>
- <li>Откройте папку <code>extensions</code>. Если её нет, создайте ее.</li>
+ <li>Откройте папку <code>extensions</code>. Если её нет, создайте её.</li>
<li>Создайте новый текстовый файл и поместите в него лишь путь к вашему расширению (напр., <code>C:\extensions\my_extension\</code> для Windows или <code>~/extensions/my_extension/</code> для Unix/Linux). Сохраните файл под именем, одинаковым с <code>id</code> вашего расширения.</li>
</ol>
diff --git a/files/ru/tools/page_inspector/how_to/edit_css_shapes/index.html b/files/ru/tools/page_inspector/how_to/edit_css_shapes/index.html
index af51af53df..b03a974df7 100644
--- a/files/ru/tools/page_inspector/how_to/edit_css_shapes/index.html
+++ b/files/ru/tools/page_inspector/how_to/edit_css_shapes/index.html
@@ -76,7 +76,7 @@ translation_of: Tools/Page_Inspector/How_to/Edit_CSS_shapes
<h3 id="Перемещение_и_масштабирование_фигур"><span class="short_text" id="result_box" lang="ru"><span>Перемещение и масштабирование фигур</span></span></h3>
-<p><span id="result_box" lang="ru"><span>Есть дополнительные функциональные возможности, доступные на выделенной фигуре - если вы нажмёте</span></span> <kbd>Ctrl</kbd>/<kbd>Cmd</kbd> + <span id="result_box" lang="ru"><span>щелчок на значок фигуры для своей фигуры, подсветка изменится, вместо этого будет возможность масштабировать и / или перемещать ее.</span></span> <span id="result_box" lang="ru"><span>Ещё раз, произойдёт отсечение, если вы превысите границы</span></span> margin box.</p>
+<p><span id="result_box" lang="ru"><span>Есть дополнительные функциональные возможности, доступные на выделенной фигуре - если вы нажмёте</span></span> <kbd>Ctrl</kbd>/<kbd>Cmd</kbd> + <span id="result_box" lang="ru"><span>щелчок на значок фигуры для своей фигуры, подсветка изменится, вместо этого будет возможность масштабировать и / или перемещать её.</span></span> <span id="result_box" lang="ru"><span>Ещё раз, произойдёт отсечение, если вы превысите границы</span></span> margin box.</p>
<p><img alt="" src="https://mdn.mozillademos.org/files/15924/scaled-circle.png"></p>
diff --git a/files/ru/web/accessibility/aria/index.html b/files/ru/web/accessibility/aria/index.html
index 8a983d96e0..303e9055f1 100644
--- a/files/ru/web/accessibility/aria/index.html
+++ b/files/ru/web/accessibility/aria/index.html
@@ -74,7 +74,7 @@ translation_of: Web/Accessibility/ARIA
<h3 id="Блоги">Блоги</h3>
-<p>Хотя информация в блогах быстро теряет актуальность, все же в них можно почерпнуть ценную информацию из первых рук - разработчиков, развивающих ARIA.</p>
+<p>Хотя информация в блогах быстро теряет актуальность, всё же в них можно почерпнуть ценную информацию из первых рук - разработчиков, развивающих ARIA.</p>
<p><a class="external" href="https://www.paciellogroup.com/blog/archive/">Paciello Group</a></p>
diff --git a/files/ru/web/api/analysernode/index.html b/files/ru/web/api/analysernode/index.html
index 13032fbbf8..3eba1fb760 100644
--- a/files/ru/web/api/analysernode/index.html
+++ b/files/ru/web/api/analysernode/index.html
@@ -7,7 +7,7 @@ translation_of: Web/API/AnalyserNode
<p><strong><code>AnalyserNode</code></strong><strong> </strong>интерфейс который предоставляет частоту (frequency) в реальном времени.  Элемент {{domxref("AudioNode")}} который пропускает аудиопоток неизменным от ввода (input) до вывода (output), но позволяет использовать генерируемые данные, обрабатывать или создавать аудиовизуализацию.</p>
-<p><code>AnalyserNode</code> имеет только один ввод и один вывод. Узел работает даже если вывод не подсоединен.</p>
+<p><code>AnalyserNode</code> имеет только один ввод и один вывод. Узел работает даже если вывод не подсоединён.</p>
<p><img alt="Without modifying the audio stream, the node allows to get the frequency and time-domain data associated to it, using a FFT." src="https://mdn.mozillademos.org/files/12970/fttaudiodata_en.svg" style="height: 206px; width: 693px;"></p>
diff --git a/files/ru/web/api/attr/index.html b/files/ru/web/api/attr/index.html
index c8e1ce971a..998cd4d512 100644
--- a/files/ru/web/api/attr/index.html
+++ b/files/ru/web/api/attr/index.html
@@ -17,7 +17,7 @@ translation_of: Web/API/Attr
<dt>{{domxref("Attr.name", "name")}} {{readOnlyInline}}</dt>
<dd>Имя атрибута.</dd>
<dt>{{domxref("Attr.namespaceURI", "namespaceURI")}} {{readOnlyInline}}</dt>
- <dd>{{domxref("DOMString")}}<font face="consolas, Liberation Mono, courier, monospace"><span style="background-color: rgba(220, 220, 220, 0.5);"> </span></font>представление URI пространства имён атрибута, или NULL если нет никакого пространства имен.</dd>
+ <dd>{{domxref("DOMString")}}<font face="consolas, Liberation Mono, courier, monospace"><span style="background-color: rgba(220, 220, 220, 0.5);"> </span></font>представление URI пространства имён атрибута, или NULL если нет никакого пространства имён.</dd>
<dt>{{domxref("Attr.localName", "localName")}} {{readOnlyInline}}</dt>
<dd>{{domxref("DOMString")}}  представление локальной части полного имени атрибута.</dd>
<dt>{{domxref("Attr.prefix", "prefix")}} {{readOnlyInline}}</dt>
@@ -68,13 +68,13 @@ translation_of: Web/API/Attr
<dt><code>nodeValue</code></dt>
<dd>Используйте {{domxref("Attr.value")}} взамен.</dd>
<dt><code>ownerDocument</code></dt>
- <dd> Вы не должны были использовать это свойство в первую очередь, поэтому вам, вероятно, все равно, что это  свойство больше не используется. </dd>
+ <dd> Вы не должны были использовать это свойство в первую очередь, поэтому вам, вероятно, всё равно, что это  свойство больше не используется. </dd>
<dt><code>parentNode</code></dt>
<dd>Это свойство всегда возвращает значение  <code>NULL</code>.</dd>
<dt><code>previousSibling</code></dt>
<dd>Это свойство всегда возвращает значение  <code>NULL</code>.</dd>
<dt><code>schemaTypeInfo</code> {{obsolete_inline}} {{readOnlyInline}}</dt>
- <dd>Сведения о типе, связанные с этим атрибутом. В то время как информация о типе, содержащаяся в этом атрибуте, гарантированно будет правильной после загрузки документа или вызова  {{domxref("Document.normalizeDocument")}}, это свойство может быть ненадёжным, если узел был перемещен.</dd>
+ <dd>Сведения о типе, связанные с этим атрибутом. В то время как информация о типе, содержащаяся в этом атрибуте, гарантированно будет правильной после загрузки документа или вызова  {{domxref("Document.normalizeDocument")}}, это свойство может быть ненадёжным, если узел был перемещён.</dd>
<dt> </dt>
<dt><code>specified</code></dt>
<dd>Это свойство всегда возвращает значение  <code>true</code>.</dd>
@@ -88,7 +88,7 @@ translation_of: Web/API/Attr
<dt><code>appendChild()</code> {{obsolete_inline(14)}}</dt>
<dd>Измените значение {{domxref("Attr.value")}} взамен.</dd>
<dt><code>cloneNode()</code></dt>
- <dd> Вы не должны были использовать это  в первую очередь, поэтому вам, вероятно, все равно, что это больше не используется. </dd>
+ <dd> Вы не должны были использовать это  в первую очередь, поэтому вам, вероятно, всё равно, что это больше не используется. </dd>
<dt><code>createAttribute()</code></dt>
<dd>Используйте  {{domxref("Element.setAttribute()")}} взамен.</dd>
<dt><code>createAttributeNS()</code></dt>
@@ -104,11 +104,11 @@ translation_of: Web/API/Attr
<dt><code>insertBefore()</code></dt>
<dd>Измените значение  {{domxref("Attr.value")}} взамен.</dd>
<dt><code>isSupported()</code></dt>
- <dd> Вы не должны были использовать это  в первую очередь, поэтому вам, вероятно, все равно, что это больше не используется. </dd>
+ <dd> Вы не должны были использовать это  в первую очередь, поэтому вам, вероятно, всё равно, что это больше не используется. </dd>
<dt><code>isEqualNode()</code></dt>
- <dd> Вы не должны были использовать это  в первую очередь, поэтому вам, вероятно, все равно, что это больше не используется. </dd>
+ <dd> Вы не должны были использовать это  в первую очередь, поэтому вам, вероятно, всё равно, что это больше не используется. </dd>
<dt><code>normalize()</code></dt>
- <dd> Вы не должны были использовать это  в первую очередь, поэтому вам, вероятно, все равно, что это больше не используется. </dd>
+ <dd> Вы не должны были использовать это  в первую очередь, поэтому вам, вероятно, всё равно, что это больше не используется. </dd>
<dt><code>removeAttributeNode()</code></dt>
<dd>Используйте {{domxref("Element.removeAttribute()")}} взамен.</dd>
<dt><code>removeChild()</code> {{obsolete_inline(14)}}</dt>
diff --git a/files/ru/web/api/body/arraybuffer/index.html b/files/ru/web/api/body/arraybuffer/index.html
index 31402b8a22..2c5151239e 100644
--- a/files/ru/web/api/body/arraybuffer/index.html
+++ b/files/ru/web/api/body/arraybuffer/index.html
@@ -9,7 +9,7 @@ translation_of: Web/API/Body/arrayBuffer
---
<div>{{APIRef("Fetch")}}</div>
-<p>Метод <strong><code>arrayBuffer()</code></strong> из примеси(mixin) {{domxref("Body")}} берет поток(stream) {{domxref("Response")}} и читает его до завершения. Он возвращает промис, который будет успешно завершён с помощью {{domxref("ArrayBuffer")}}.</p>
+<p>Метод <strong><code>arrayBuffer()</code></strong> из примеси(mixin) {{domxref("Body")}} берёт поток(stream) {{domxref("Response")}} и читает его до завершения. Он возвращает промис, который будет успешно завершён с помощью {{domxref("ArrayBuffer")}}.</p>
<h2 id="Синтаксис">Синтаксис</h2>
diff --git a/files/ru/web/api/canvas_api/tutorial/basic_usage/index.html b/files/ru/web/api/canvas_api/tutorial/basic_usage/index.html
index e4756dc73d..68a8b0c831 100644
--- a/files/ru/web/api/canvas_api/tutorial/basic_usage/index.html
+++ b/files/ru/web/api/canvas_api/tutorial/basic_usage/index.html
@@ -46,7 +46,7 @@ translation_of: Web/API/Canvas_API/Tutorial/Basic_usage
<h3 id="Требуется_тег_&lt;canvas>"><span class="short_text" id="result_box" lang="ru"><span class="hps">Требуется</span> <span class="hps">тег </span></span><code>&lt;/canvas&gt;</code></h3>
-<p>В отличии от элемента {{HTMLElement("img")}}, элемент {{HTMLElement("canvas")}}  <strong>требует</strong> закрывающийся тег (<code>&lt;/canvas&gt;</code>). Если этот тег не предоставлен, остаток документа будет считаться запасным контентом и не будет отображен.</p>
+<p>В отличии от элемента {{HTMLElement("img")}}, элемент {{HTMLElement("canvas")}}  <strong>требует</strong> закрывающийся тег (<code>&lt;/canvas&gt;</code>). Если этот тег не предоставлен, остаток документа будет считаться запасным контентом и не будет отображён.</p>
<p>Если запасной контент не нужен, простой  <code>&lt;canvas id="foo" ...&gt;&lt;/canvas&gt;</code> полностью совместим со всеми браузерами, что поддерживают canvas.</p>
diff --git a/files/ru/web/api/canvas_api/tutorial/pixel_manipulation_with_canvas/index.html b/files/ru/web/api/canvas_api/tutorial/pixel_manipulation_with_canvas/index.html
index 67b81c9b63..f8ef9679b9 100644
--- a/files/ru/web/api/canvas_api/tutorial/pixel_manipulation_with_canvas/index.html
+++ b/files/ru/web/api/canvas_api/tutorial/pixel_manipulation_with_canvas/index.html
@@ -48,7 +48,7 @@ translation_of: Web/API/Canvas_API/Tutorial/Pixel_manipulation_with_canvas
<p>Это создаёт новый объект <code>ImageData</code> с указанными параметрами. Все пиксели заданы прозрачным черным.</p>
-<p>Вы также можете создать новый объект <code>ImageData</code> ImageData с теми же размерами, что и объект, заданный <code>anotherImageData</code> . Все пиксели нового объекта установлены на прозрачный черный. <strong>Это не копирует данные изображения!</strong></p>
+<p>Вы также можете создать новый объект <code>ImageData</code> ImageData с теми же размерами, что и объект, заданный <code>anotherImageData</code> . Все пиксели нового объекта установлены на прозрачный чёрный. <strong>Это не копирует данные изображения!</strong></p>
<pre class="brush: js">var myImageData = ctx.createImageData(anotherImageData);</pre>
diff --git a/files/ru/web/api/canvas_api/tutorial/using_images/index.html b/files/ru/web/api/canvas_api/tutorial/using_images/index.html
index c8e40a0c5f..288787c605 100644
--- a/files/ru/web/api/canvas_api/tutorial/using_images/index.html
+++ b/files/ru/web/api/canvas_api/tutorial/using_images/index.html
@@ -201,7 +201,7 @@ img.src = 'data:image/gif;base64,R0lGODlhCwALAIAAAAAA3pn/ZiH5BAEAAAEALAAAAAALAAs
<dl>
<dt>{{domxref("CanvasRenderingContext2D.drawImage", "drawImage(image, sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight)")}}</dt>
- <dd>В данном изображении, эта функция берет фрагмент из изображения, в виде прямоугольника, левый верхний угол которого -  (<code>sx</code>, <code>sy</code>), ширина и высота -  <code>sWidth</code> и <code>sHeight</code> и рисует  в  canvas, располагая его в точке  (<code>dx</code>, <code>dy</code>) и изменяя его размер на указанные величины в  <code>dWidth</code> и <code>dHeight</code>.</dd>
+ <dd>В данном изображении, эта функция берёт фрагмент из изображения, в виде прямоугольника, левый верхний угол которого -  (<code>sx</code>, <code>sy</code>), ширина и высота -  <code>sWidth</code> и <code>sHeight</code> и рисует  в  canvas, располагая его в точке  (<code>dx</code>, <code>dy</code>) и изменяя его размер на указанные величины в  <code>dWidth</code> и <code>dHeight</code>.</dd>
</dl>
<p><img alt="" class="internal" src="https://mdn.mozillademos.org/files/225/Canvas_drawimage.jpg" style="float: right; height: 290px; width: 300px;">Чтобы понять что  делает нарезка, можно посмотреть на изображение справа. Первые четыре параметра определяют местоположение и размер фрагмента исходного изображения.  Последние четыре параметра определяют прямоугольник, в который будет вписано изображение на целевом рисунке  canvas.</p>
diff --git a/files/ru/web/api/canvasrenderingcontext2d/drawimage/index.html b/files/ru/web/api/canvasrenderingcontext2d/drawimage/index.html
index 370ecfcb57..8d6eca8c4c 100644
--- a/files/ru/web/api/canvasrenderingcontext2d/drawimage/index.html
+++ b/files/ru/web/api/canvasrenderingcontext2d/drawimage/index.html
@@ -36,13 +36,13 @@ void <var><em>ctx</em>.drawImage(image, sx, sy, sWidth, sHeight, dx, dy, dWidth,
<dt><code>dHeight</code></dt>
<dd>Высота изображения, полученного из исходного <code>image</code>. Эта опция позволяет масштабировать изображение по высоте. Если опция не задана, изображение не будет масштабировано.</dd>
<dt><code>sx</code></dt>
- <dd>Координата по оси X верхнего левого угла фрагмента, который будет вырезан из изображения-источника и помещён в контекст-приемник.</dd>
+ <dd>Координата по оси X верхнего левого угла фрагмента, который будет вырезан из изображения-источника и помещён в контекст-приёмник.</dd>
<dt><code>sy</code></dt>
- <dd>Координата по оси Y верхнего левого угла фрагмента, который будет вырезан из изображения-источника и помещён в контекст-приемник.</dd>
+ <dd>Координата по оси Y верхнего левого угла фрагмента, который будет вырезан из изображения-источника и помещён в контекст-приёмник.</dd>
<dt><code>sWidth</code></dt>
- <dd>Ширина фрагмента, который будет вырезан из изображения источника и помещён в контекст-приёмник. Если не задана, фрагмент от точки, заданной <code>sx</code> и <code>sy</code> до правого нижнего угла источника будет целиком скопирован в контекст-приемник.</dd>
+ <dd>Ширина фрагмента, который будет вырезан из изображения источника и помещён в контекст-приёмник. Если не задана, фрагмент от точки, заданной <code>sx</code> и <code>sy</code> до правого нижнего угла источника будет целиком скопирован в контекст-приёмник.</dd>
<dt><code>sHeight</code></dt>
- <dd>Высота фрагмента, который будет вырезан из изображения источника и помещён в контекст-приемник.</dd>
+ <dd>Высота фрагмента, который будет вырезан из изображения источника и помещён в контекст-приёмник.</dd>
</dl>
<h3 id="Исключения">Исключения</h3>
diff --git a/files/ru/web/api/canvasrenderingcontext2d/fill/index.html b/files/ru/web/api/canvasrenderingcontext2d/fill/index.html
index ddc127a9ad..35177edfb2 100644
--- a/files/ru/web/api/canvasrenderingcontext2d/fill/index.html
+++ b/files/ru/web/api/canvasrenderingcontext2d/fill/index.html
@@ -12,7 +12,7 @@ translation_of: Web/API/CanvasRenderingContext2D/fill
---
<div>{{APIRef}}</div>
-<p><code><strong>CanvasRenderingContext2D</strong></code><strong><code>.fill()</code></strong> метод Canvas 2D API заполняет текущий или заданный путём с текущим стилем заливки, используя одно из двух правил - ненулевого индекса или чётно-нечетное.</p>
+<p><code><strong>CanvasRenderingContext2D</strong></code><strong><code>.fill()</code></strong> метод Canvas 2D API заполняет текущий или заданный путём с текущим стилем заливки, используя одно из двух правил - ненулевого индекса или чётно-нечётное.</p>
<h2 id="Синтаксис">Синтаксис</h2>
diff --git a/files/ru/web/api/canvasrenderingcontext2d/index.html b/files/ru/web/api/canvasrenderingcontext2d/index.html
index 149f72ee66..eba513fe5a 100644
--- a/files/ru/web/api/canvasrenderingcontext2d/index.html
+++ b/files/ru/web/api/canvasrenderingcontext2d/index.html
@@ -121,7 +121,7 @@ ctx.fillRect(10, 10, 55, 50);
<dt>{{domxref("CanvasRenderingContext2D.shadowBlur")}}</dt>
<dd>Устанавливает эффект размытия. По умолчанию <code>0</code></dd>
<dt>{{domxref("CanvasRenderingContext2D.shadowColor")}}</dt>
- <dd>Цвет тени. По умолчанию полностью прозрачный черный.</dd>
+ <dd>Цвет тени. По умолчанию полностью прозрачный чёрный.</dd>
<dt>{{domxref("CanvasRenderingContext2D.shadowOffsetX")}}</dt>
<dd>Горизонтальное смещение тени. По умолчанию 0.</dd>
<dt>{{domxref("CanvasRenderingContext2D.shadowOffsetY")}}</dt>
@@ -217,7 +217,7 @@ ctx.fillRect(10, 10, 55, 50);
<dl>
<dt>{{domxref("CanvasRenderingContext2D.createImageData()")}}</dt>
- <dd>Создаёт новый пустой объект {{domxref("ImageData")}} с заданными размерами. Цвет всех пикселов в новом объекте устанавливается в прозрачный черный.</dd>
+ <dd>Создаёт новый пустой объект {{domxref("ImageData")}} с заданными размерами. Цвет всех пикселов в новом объекте устанавливается в прозрачный чёрный.</dd>
<dt>{{domxref("CanvasRenderingContext2D.getImageData()")}}</dt>
<dd>Возвращает объект {{domxref("ImageData")}}, представляющий данные о пикселах, расположенных под областью холста, ограниченной прямоугольником длиной <em>sw</em> и высотой <em>sh</em>, начальная точка которого находится в позиции <em>(sx, sy)</em>.</dd>
<dt>{{domxref("CanvasRenderingContext2D.putImageData()")}}</dt>
diff --git a/files/ru/web/api/canvasrenderingcontext2d/linecap/index.html b/files/ru/web/api/canvasrenderingcontext2d/linecap/index.html
index 60b93d518e..d9ea54e0ee 100644
--- a/files/ru/web/api/canvasrenderingcontext2d/linecap/index.html
+++ b/files/ru/web/api/canvasrenderingcontext2d/linecap/index.html
@@ -25,7 +25,7 @@ translation_of: Web/API/CanvasRenderingContext2D/lineCap
<dt><code>butt</code></dt>
<dd>Концы линий прямые.</dd>
<dt><code>round</code></dt>
- <dd>Концы линий скругленные.</dd>
+ <dd>Концы линий скруглённые.</dd>
<dt><code>square</code></dt>
<dd>Концы линий прямые, но к ней с обоих концов добавляется поле с шириной равной толщине линии и высотой равной половине от толщины линии.</dd>
</dl>
diff --git a/files/ru/web/api/datatransfer/index.html b/files/ru/web/api/datatransfer/index.html
index 6c7fb043e9..f443bc8c07 100644
--- a/files/ru/web/api/datatransfer/index.html
+++ b/files/ru/web/api/datatransfer/index.html
@@ -233,7 +233,7 @@ translation_of: Web/API/DataTransfer
<h6 id="Parameters_getData" name="Parameters_getData">Параметры</h6>
-<p>Тип данных который будет возвращен.</p>
+<p>Тип данных который будет возвращён.</p>
<dl>
<dt><code>type </code></dt>
diff --git a/files/ru/web/api/document/write/index.html b/files/ru/web/api/document/write/index.html
index 1655795466..8d9e74c6a1 100644
--- a/files/ru/web/api/document/write/index.html
+++ b/files/ru/web/api/document/write/index.html
@@ -60,7 +60,7 @@ translation_of: Web/API/Document/write
<div class="note"><strong>Замечание:</strong> <code>document.write</code> в <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script#attr-defer">отложенных</a> или <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script#attr-async">асинхронных</a> сценариях игнорируется и выводится сообщение типа "Проигнорирован вызов <code>document.write()</code> из асинхронно загруженного внешнего сценария" в консоли ошибок.</div>
-<div class="note"><strong>Замечание:</strong> В Edge  вызов <code>document.write в </code>iframe более одного раза  приводит к ошибке SCRIPT70: Доступ запрещен.</div>
+<div class="note"><strong>Замечание:</strong> В Edge  вызов <code>document.write в </code>iframe более одного раза  приводит к ошибке SCRIPT70: Доступ запрещён.</div>
<div class="note"><strong>Замечание:</strong> Начиная с версии 55, Chrome не исполняет элементы <code>&lt;script&gt;</code>  вставленные посредством <code>document.write()</code> в случае отсутствия кэша HTTP для пользователей 2G подключения.</div>
diff --git a/files/ru/web/api/document_object_model/introduction/index.html b/files/ru/web/api/document_object_model/introduction/index.html
index 426ebcbe5e..a14f1ce2e8 100644
--- a/files/ru/web/api/document_object_model/introduction/index.html
+++ b/files/ru/web/api/document_object_model/introduction/index.html
@@ -122,7 +122,7 @@ p_list = doc.getElementsByTagName("para");</code></pre>
-<p>Это руководство об объектах и реальных вещах, которые вы можете использовать для управления DOM-иерархией. Есть много моментов, где понимание того, как это работает, может удивлять. Например, объект, представляющий <code>HTML form</code> элемент, берет своё свойство <code><strong>name </strong></code>из интерфейса <code>HTMLFormElement, </code>а свойство <code><strong>className - </strong></code>из интерфейса <code>HTMLElement. </code>В обоих случаях свойство, которое вы хотите, находится в этом объекте формы.</p>
+<p>Это руководство об объектах и реальных вещах, которые вы можете использовать для управления DOM-иерархией. Есть много моментов, где понимание того, как это работает, может удивлять. Например, объект, представляющий <code>HTML form</code> элемент, берёт своё свойство <code><strong>name </strong></code>из интерфейса <code>HTMLFormElement, </code>а свойство <code><strong>className - </strong></code>из интерфейса <code>HTMLElement. </code>В обоих случаях свойство, которое вы хотите, находится в этом объекте формы.</p>
<p>Кроме того, отношение между объектами и интерфейсами, которые они реализуют в DOM может быть удивительным и этот раздел пытается рассказать немного о существующих интерфейсах в DOM и о том, как они могут быть доступны.</p>
diff --git a/files/ru/web/api/element/index.html b/files/ru/web/api/element/index.html
index 690ad551ff..8fe70d2d05 100644
--- a/files/ru/web/api/element/index.html
+++ b/files/ru/web/api/element/index.html
@@ -51,7 +51,7 @@ translation_of: Web/API/Element
<dt>{{ domxref("Element.innerHTML") }} {{experimental_inline}}</dt>
<dd>Является {{domxref("DOMString")}}, представляющей разметку контента элемента.</dd>
<dt>{{domxref("Element.namespaceURI")}} {{readonlyInline}}</dt>
- <dd>Пространство имён URI элемента или null, если это не пространство имен.</dd>
+ <dd>Пространство имён URI элемента или null, если это не пространство имён.</dd>
<dd>
<div class="note">
<p><strong>Примечание:</strong> В Firefox версии 3.5 и ранее, HTML элементы не находятся в пространстве имён. В более поздних версиях, HTML элементы находятся в пространстве имён  <code><a href="http://www.w3.org/1999/xhtml" title="Linkification: http://www.w3.org/1999/xhtml">http://www.w3.org/1999/xhtml</a></code>  как в деревьях HTML, так и XML. {{ gecko_minversion_inline("1.9.2") }}</p>
diff --git a/files/ru/web/api/element/setattribute/index.html b/files/ru/web/api/element/setattribute/index.html
index f7e43d6d58..112bbb7019 100644
--- a/files/ru/web/api/element/setattribute/index.html
+++ b/files/ru/web/api/element/setattribute/index.html
@@ -21,7 +21,7 @@ translation_of: Web/API/Element/setAttribute
<h2 id="Пример" name="Пример">Пример</h2>
-<p>В следующем примере, <code>setAttribute()</code> используется, чтобы установить атрибут {{htmlattrxref("disabled")}}  кнопки {{htmlelement("button")}}, делая её отключенной.</p>
+<p>В следующем примере, <code>setAttribute()</code> используется, чтобы установить атрибут {{htmlattrxref("disabled")}}  кнопки {{htmlelement("button")}}, делая её отключённой.</p>
<pre class="brush: html notranslate">&lt;button&gt;Hello World&lt;/button&gt;</pre>
diff --git a/files/ru/web/api/event/preventdefault/index.html b/files/ru/web/api/event/preventdefault/index.html
index de7b9c69c1..29c6b8eac7 100644
--- a/files/ru/web/api/event/preventdefault/index.html
+++ b/files/ru/web/api/event/preventdefault/index.html
@@ -103,7 +103,7 @@ function checkName(evt) {
<h2 id="Notes" name="Notes">Примечания</h2>
-<p>Вызов <code>preventDefault</code> на любой стадии выполнения  потока событий отменяет событие, а это означает, что любое действие по умолчанию обычно принимается реализацией, как  результат события, которое  не произойдет.</p>
+<p>Вызов <code>preventDefault</code> на любой стадии выполнения  потока событий отменяет событие, а это означает, что любое действие по умолчанию обычно принимается реализацией, как  результат события, которое  не произойдёт.</p>
<div class="note">
<p><strong>Примечание:</strong>  В {{Gecko("6.0")}}, вызов <code>preventDefault()</code> приводит к {{ domxref("event.defaultPrevented") }} к переходу значения в состояние <code>True</code>.</p>
diff --git a/files/ru/web/api/eventtarget/addeventlistener/index.html b/files/ru/web/api/eventtarget/addeventlistener/index.html
index 9986963aa4..b749d328d7 100644
--- a/files/ru/web/api/eventtarget/addeventlistener/index.html
+++ b/files/ru/web/api/eventtarget/addeventlistener/index.html
@@ -38,7 +38,7 @@ target</em>.addEventListener(<em>type</em>, <em>listener</em>[, <em>useCapture</
<ul>
<li><code>capture</code>:  {{jsxref("Boolean")}} указывает, что события этого типа будут отправлены зарегистрированному обработчику <code>listener</code> перед отправкой на <code>EventTarget</code>, расположенный ниже в дереве DOM.</li>
<li><code>once</code>: {{jsxref("Boolean")}} указывает, что обработчик должен быть вызван не более одного раза после добавления. Если <code>true</code>, обработчик автоматически удаляется при вызове.</li>
- <li><code>passive</code>:  {{jsxref("Boolean")}} указывает, что обработчик никогда не вызовет <code>preventDefault()</code>. Если все же вызов будет произведён, браузер должен игнорировать его и генерировать консольное предупреждение. Пример {{anch("Улучшение производительности прокрутки с помощью passive true")}}</li>
+ <li><code>passive</code>:  {{jsxref("Boolean")}} указывает, что обработчик никогда не вызовет <code>preventDefault()</code>. Если всё же вызов будет произведён, браузер должен игнорировать его и генерировать консольное предупреждение. Пример {{anch("Улучшение производительности прокрутки с помощью passive true")}}</li>
<li>{{non-standard_inline}}<code> mozSystemGroup</code>: {{jsxref("Boolean")}} указывает, что обработчик должен быть добавлен в системную группу. Доступно только в коде, запущенном в XBL или в <a href="https://chrome.google.com/webstore/detail/open-with-firefox/poeacjbaiakjnaepdjgggojcjoajakmd">расширении Chrome</a>.</li>
</ul>
</dd>
diff --git a/files/ru/web/api/fetch_api/using_fetch/index.html b/files/ru/web/api/fetch_api/using_fetch/index.html
index 77244b0d5a..22cfb7e945 100644
--- a/files/ru/web/api/fetch_api/using_fetch/index.html
+++ b/files/ru/web/api/fetch_api/using_fetch/index.html
@@ -475,7 +475,7 @@ console.log(myHeaders.get("X-Custom-Header")); // [ ]</pre>
<p>[1] Этот API  is implemented behind a preference.</p>
-<p>[2] До Firefox 52, <code>get()</code> возвращал только  первое значение в указанном заголовке, а <code>getAll()</code> возвращал все значения. Начиная с 52, <code>get()</code> теперь возвращает все значения и <code>getAll()</code> был удален.</p>
+<p>[2] До Firefox 52, <code>get()</code> возвращал только  первое значение в указанном заголовке, а <code>getAll()</code> возвращал все значения. Начиная с 52, <code>get()</code> теперь возвращает все значения и <code>getAll()</code> был удалён.</p>
<h2 id="См._также">См. также</h2>
diff --git a/files/ru/web/api/html_drag_and_drop_api/drag_operations/index.html b/files/ru/web/api/html_drag_and_drop_api/drag_operations/index.html
index 24931b8d5b..8147b26a6e 100644
--- a/files/ru/web/api/html_drag_and_drop_api/drag_operations/index.html
+++ b/files/ru/web/api/html_drag_and_drop_api/drag_operations/index.html
@@ -94,7 +94,7 @@ dt.setData("text/plain", "https://www.mozilla.org");
<pre class="brush: js">event.dataTransfer.clearData("text/uri-list");
</pre>
-<p>Аргумент <code>type</code> в методе {{domxref("DataTransfer.clearData","clearData()")}} опционален. Если <code>type</code> не указан, данные, связанные со всеми типами, удаляются. Если перетаскивание не содержит элементов данных перетаскивания или все элементы были впоследствии очищены, то перетаскивание не произойдет.</p>
+<p>Аргумент <code>type</code> в методе {{domxref("DataTransfer.clearData","clearData()")}} опционален. Если <code>type</code> не указан, данные, связанные со всеми типами, удаляются. Если перетаскивание не содержит элементов данных перетаскивания или все элементы были впоследствии очищены, то перетаскивание не произойдёт.</p>
<h2 id="dragfeedback" name="dragfeedback">Настройка изображения отклика drag</h2>
diff --git a/files/ru/web/api/htmlaudioelement/index.html b/files/ru/web/api/htmlaudioelement/index.html
index 4ecbafa11a..639d1d85bd 100644
--- a/files/ru/web/api/htmlaudioelement/index.html
+++ b/files/ru/web/api/htmlaudioelement/index.html
@@ -28,7 +28,7 @@ translation_of: Web/API/HTMLAudioElement
<h4 id="Описание">Описание</h4>
-<p>Конструктор audio элемента. Свойство <code>preload</code> по умолчанию задано как <code>auto</code>, а <code>src</code> равно значению аргумента <em>URLString.</em> Перед воспроизведением, браузер асинхронно загружает объект в кэш и впоследствии берет данные оттуда.</p>
+<p>Конструктор audio элемента. Свойство <code>preload</code> по умолчанию задано как <code>auto</code>, а <code>src</code> равно значению аргумента <em>URLString.</em> Перед воспроизведением, браузер асинхронно загружает объект в кэш и впоследствии берёт данные оттуда.</p>
<p>Параметры</p>
diff --git a/files/ru/web/api/htmlcanvaselement/getcontext/index.html b/files/ru/web/api/htmlcanvaselement/getcontext/index.html
index ebd62161f6..18e50dc31b 100644
--- a/files/ru/web/api/htmlcanvaselement/getcontext/index.html
+++ b/files/ru/web/api/htmlcanvaselement/getcontext/index.html
@@ -5,7 +5,7 @@ translation_of: Web/API/HTMLCanvasElement/getContext
---
<div>{{APIRef("Canvas API")}}</div>
-<p>Метод <strong><code>HTMLCanvasElement.getContext()</code></strong> возвращает контекст рисования на холсте, или {{jsxref("null")}}, если идентификатор контекста не определен.</p>
+<p>Метод <strong><code>HTMLCanvasElement.getContext()</code></strong> возвращает контекст рисования на холсте, или {{jsxref("null")}}, если идентификатор контекста не определён.</p>
<h2 id="Синтаксис">Синтаксис</h2>
diff --git a/files/ru/web/api/htmlmediaelement/index.html b/files/ru/web/api/htmlmediaelement/index.html
index 1b069ef10a..9223858223 100644
--- a/files/ru/web/api/htmlmediaelement/index.html
+++ b/files/ru/web/api/htmlmediaelement/index.html
@@ -196,7 +196,7 @@ translation_of: Web/API/HTMLMediaElement
<dt>{{domxref("HTMLMediaElement.canplaythrough_event", 'canplaythrough')}}</dt>
<dd>Запускается, когда пользовательский агент может воспроизводить мультимедиа, и оценивает, что было загружено достаточно данных для воспроизведения мультимедиа до его конца, без необходимости остановки для дальнейшей буферизации контента.</dd>
<dt>{{domxref("HTMLMediaElement.durationchange_event", 'durationchange')}}</dt>
- <dd>Запускается, когда атрибут продолжительности был обновлен.</dd>
+ <dd>Запускается, когда атрибут продолжительности был обновлён.</dd>
<dt>{{domxref("HTMLMediaElement.emptied_event", 'emptied')}}</dt>
<dd>Запускается, когда носитель становится пустым; например, когда носитель уже загружен (или частично загружен), и для его перезагрузки вызывается метод {{domxref ("HTMLMediaElement.load ()")}}.</dd>
<dt>{{domxref("HTMLMediaElement.ended_event", 'ended')}}</dt>
diff --git a/files/ru/web/api/intersection_observer_api/index.html b/files/ru/web/api/intersection_observer_api/index.html
index bd1354931e..2a1c6e99e6 100644
--- a/files/ru/web/api/intersection_observer_api/index.html
+++ b/files/ru/web/api/intersection_observer_api/index.html
@@ -15,7 +15,7 @@ translation_of: Web/API/Intersection_Observer_API
<ul>
<li>Отложенная загрузка изображений или другого контента по мере прокрутки страницы.</li>
<li>Реализация веб-сайтов с "бесконечным скроллом", где контент подгружается по мере того как страница прокручивается вниз, и пользователю не нужно переключаться между страницами.</li>
- <li>Отчёт о видимости рекламы с целью посчитать доходы от нее.</li>
+ <li>Отчёт о видимости рекламы с целью посчитать доходы от неё.</li>
<li>Принятие решения, запускать ли какой-то процесс или анимацию в зависимости от того, увидит пользователь результат или нет.</li>
</ul>
diff --git a/files/ru/web/api/keyboardevent/key/key_values/index.html b/files/ru/web/api/keyboardevent/key/key_values/index.html
index 1dc955cf06..48fdfcee00 100644
--- a/files/ru/web/api/keyboardevent/key/key_values/index.html
+++ b/files/ru/web/api/keyboardevent/key/key_values/index.html
@@ -1731,7 +1731,7 @@ translation_of: Web/API/KeyboardEvent/key/Key_Values
</tr>
<tr>
<td><code>"Call"</code></td>
- <td>Кнопка вызова <kbd>Call</kbd>. Набирает номер, который был введен.</td>
+ <td>Кнопка вызова <kbd>Call</kbd>. Набирает номер, который был введён.</td>
<td></td>
<td></td>
<td><code>Qt::Key_Call</code> (0x01100004)</td>
@@ -1857,7 +1857,7 @@ translation_of: Web/API/KeyboardEvent/key/Key_Values
</tr>
<tr>
<td><code>"MediaFastForward"</code> [2]</td>
- <td><span class="tlid-translation translation" lang="ru"><span title="">Запускает, продолжает или увеличивает скорость быстрой перемотки мультимедиа вперед.</span></span></td>
+ <td><span class="tlid-translation translation" lang="ru"><span title="">Запускает, продолжает или увеличивает скорость быстрой перемотки мультимедиа вперёд.</span></span></td>
<td><code>APPCOMMAND_MEDIA_FAST_FORWARD</code></td>
<td></td>
<td><code>GDK_KEY_AudioForward (0x1008FF97)<br>
@@ -2026,7 +2026,7 @@ translation_of: Web/API/KeyboardEvent/key/Key_Values
</tr>
<tr>
<td><code>"AudioFaderFront"</code></td>
- <td>Смещает регулятор уровня сигнала вперед.</td>
+ <td>Смещает регулятор уровня сигнала вперёд.</td>
<td><code>VK_FADER_FRONT</code></td>
<td></td>
<td></td>
diff --git a/files/ru/web/api/mutationobserver/index.html b/files/ru/web/api/mutationobserver/index.html
index 3f0fbf8ca5..4adfaf642b 100644
--- a/files/ru/web/api/mutationobserver/index.html
+++ b/files/ru/web/api/mutationobserver/index.html
@@ -19,7 +19,7 @@ translation_of: Web/API/MutationObserver
<dl>
<dt>{{domxref("MutationObserver.MutationObserver", "MutationObserver()")}}</dt>
- <dd>Создает и возвращает новый <code>MutationObserver</code>, который вызовет определённую колбэк-функцию при изменении в DOM.</dd>
+ <dd>Создаёт и возвращает новый <code>MutationObserver</code>, который вызовет определённую колбэк-функцию при изменении в DOM.</dd>
</dl>
<h2 id="Параметры">Параметры</h2>
diff --git a/files/ru/web/api/navigator/battery/index.html b/files/ru/web/api/navigator/battery/index.html
index 4ca4b15feb..228b2706c5 100644
--- a/files/ru/web/api/navigator/battery/index.html
+++ b/files/ru/web/api/navigator/battery/index.html
@@ -29,5 +29,5 @@ translation_of: Web/API/Navigator/battery
<li>Состояние <a href="/en-US/docs/WebAPI/Battery_Status" title="/en-US/docs/WebAPI/Battery_Status">Battery API</a>.</li>
<li><a class="external" href="http://hacks.mozilla.org/2012/02/using-the-battery-api-part-of-webapi/">Пост в блоге - использование Battery API.</a></li>
<li><a class="external" href="http://davidwalsh.name/battery-api" title="http://davidwalsh.name/battery-api">David Walsh  Battery Api в JavaScript</a>.</li>
- <li><a href="https://github.com/pstadler/battery.js" title="https://github.com/pstadler/battery.js">battery.js - крошечная кросс-браузерная обертка.</a></li>
+ <li><a href="https://github.com/pstadler/battery.js" title="https://github.com/pstadler/battery.js">battery.js - крошечная кросс-браузерная обёртка.</a></li>
</ul>
diff --git a/files/ru/web/api/node/index.html b/files/ru/web/api/node/index.html
index 712c65e0b6..cb8fd75f41 100644
--- a/files/ru/web/api/node/index.html
+++ b/files/ru/web/api/node/index.html
@@ -108,7 +108,7 @@ translation_of: Web/API/Node
<dt>{{domxref("Node.parentElement")}} {{readonlyInline}}</dt>
<dd>Возвращает {{domxref("Element")}} который является родителем данного узла. Если узел не имеет родителя или если родитель не {{domxref("Element")}}, это свойство вернёт <code>null</code>.</dd>
<dt>{{domxref("Node.prefix")}} {{obsolete_inline}}{{readonlyInline}}</dt>
- <dd>{{domxref("DOMString")}} представляющий префикс пространства имён узла или <code>null</code> если нет префикса точно определенного.<br>
+ <dd>{{domxref("DOMString")}} представляющий префикс пространства имён узла или <code>null</code> если нет префикса точно определённого.<br>
Хотя недавние спецификации требуют того, чтобы <code>префикс</code> был определён как интерфейс {{domxref("Element")}}, браузеры основанные на Gecko ещё реализовывают его как интерфейс {{domxref("Node")}}.</dd>
<dt>{{domxref("Node.previousSibling")}} {{readonlyInline}}</dt>
<dd>Возвращают {{domxref("Node")}} представляющий предыдущий узел древа или <code>null</code>, если нет такого узла.</dd>
diff --git a/files/ru/web/api/node/insertbefore/index.html b/files/ru/web/api/node/insertbefore/index.html
index b512bffba9..2bf393bc60 100644
--- a/files/ru/web/api/node/insertbefore/index.html
+++ b/files/ru/web/api/node/insertbefore/index.html
@@ -73,7 +73,7 @@ var newElement = document.createElement("div");
parentElement.insertBefore(newElement, theFirstChild);
</pre>
-<p>Когда у родителя нет первого дочернего элемента, <code>firstChild</code> вернёт <code>null</code>. Новый элемент все равно будет выставляться после последнего дочернего элемента. Но так как родитель не имеет первого дочернего элемента, то он не будет иметь и последнего. Следовательно, после добавления в него элемента, этот элемент будет единственным дочерним элементом.</p>
+<p>Когда у родителя нет первого дочернего элемента, <code>firstChild</code> вернёт <code>null</code>. Новый элемент всё равно будет выставляться после последнего дочернего элемента. Но так как родитель не имеет первого дочернего элемента, то он не будет иметь и последнего. Следовательно, после добавления в него элемента, этот элемент будет единственным дочерним элементом.</p>
<h2 id="Browser_Compatibility" name="Browser_Compatibility">Совместимость с браузерами</h2>
diff --git a/files/ru/web/api/node/issupported/index.html b/files/ru/web/api/node/issupported/index.html
index 2ffbdadbca..d4db362dbb 100644
--- a/files/ru/web/api/node/issupported/index.html
+++ b/files/ru/web/api/node/issupported/index.html
@@ -115,7 +115,7 @@ translation_of: Web/API/Node/isSupported
<h3 id="Gecko-специфичные_замечания">Gecko-специфичные замечания</h3>
-<p>[1] Начиная с Gecko 19.0 {{geckoRelease("19.0")}} этот метод всегда будет возвращать true ({{bug("801425")}}) и начиная с Gecko 22.0 {{geckoRelease("22.0")}} этот метод был удален.</p>
+<p>[1] Начиная с Gecko 19.0 {{geckoRelease("19.0")}} этот метод всегда будет возвращать true ({{bug("801425")}}) и начиная с Gecko 22.0 {{geckoRelease("22.0")}} этот метод был удалён.</p>
<h2 id="Смотрите_также">Смотрите также</h2>
diff --git a/files/ru/web/api/node/lookupnamespaceuri/index.html b/files/ru/web/api/node/lookupnamespaceuri/index.html
index d37ac9f73a..4dc20c5c52 100644
--- a/files/ru/web/api/node/lookupnamespaceuri/index.html
+++ b/files/ru/web/api/node/lookupnamespaceuri/index.html
@@ -5,7 +5,7 @@ translation_of: Web/API/Node/lookupNamespaceURI
---
<div>{{APIRef("DOM")}}</div>
-<p>Метод <code><strong>Node.lookupNamespaceURI()</strong></code> берет префикс и возвращает пространство имён URI связанное с ним в данном узле, если найден (и <code>null</code> если нет). Устанавливает <code>null</code> для префикса который возвращает пространство имён по умолчанию.</p>
+<p>Метод <code><strong>Node.lookupNamespaceURI()</strong></code> берёт префикс и возвращает пространство имён URI связанное с ним в данном узле, если найден (и <code>null</code> если нет). Устанавливает <code>null</code> для префикса который возвращает пространство имён по умолчанию.</p>
<p>Из-за ошибки <a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=312019" title="https://bugzilla.mozilla.org/show_bug.cgi?id=312019">bug 312019</a>, этот метод не работает с динамическим назначением пространства имён (т.е., с уставленным тем же <a href="/en/DOM/Node.prefix" title="En/DOM/Node.prefix">Node.prefix</a>).</p>
diff --git a/files/ru/web/api/node/namespaceuri/index.html b/files/ru/web/api/node/namespaceuri/index.html
index 479df26e24..aceba64d3f 100644
--- a/files/ru/web/api/node/namespaceuri/index.html
+++ b/files/ru/web/api/node/namespaceuri/index.html
@@ -32,7 +32,7 @@ translation_of: Web/API/Node/namespaceURI
<p>Вы можете создать элемент с конкретным <code>namespaceURI</code> используйте метод DOM Level 2 <a href="/en-US/docs/DOM/document.createElementNS" title="DOM/document.createElementNS">document.createElementNS</a>.</p>
-<p>Через <a class="external" href="http://www.w3.org/TR/xml-names11/">пространство имён в XML</a> спецификации, атрибуты не наследуют пространство имён для элемента к которому он прикреплён. Если у атрибута не задано явно пространство имён, он не имеет пространства имен.</p>
+<p>Через <a class="external" href="http://www.w3.org/TR/xml-names11/">пространство имён в XML</a> спецификации, атрибуты не наследуют пространство имён для элемента к которому он прикреплён. Если у атрибута не задано явно пространство имён, он не имеет пространства имён.</p>
<p>DOM не обрабатывает или не вынуждает проверять пространство имён как таковое. Приложения выше DOM, делают необходимые проверки. <span id="result_box" lang="ru"><span class="hps">Отметим также,</span> <span class="hps">что</span> <span class="hps">префикс пространства имён</span><span>,</span> <span class="hps">когда</span> <span class="hps">он связан с</span> <span class="hps">конкретным узлом</span><span>,</span> <span class="hps">не может быть изменён</span><span>.</span></span></p>
diff --git a/files/ru/web/api/node/replacechild/index.html b/files/ru/web/api/node/replacechild/index.html
index ae9a375735..f1bbaa172a 100644
--- a/files/ru/web/api/node/replacechild/index.html
+++ b/files/ru/web/api/node/replacechild/index.html
@@ -19,8 +19,8 @@ original_slug: Web/API/Node.replaceChild
<pre class="syntaxbox"><em>replacedNode</em> = <em>parentNode</em>.replaceChild(<em>newChild</em>, <em>oldChild</em>);
</pre>
<ul>
- <li><code>newChild</code> элемент на который будет заменён <code>oldChild</code>. В случает если он уже есть в DOM, то сначала он будет удален.</li>
- <li><code>oldChild</code> элемент который будет заменен.</li>
+ <li><code>newChild</code> элемент на который будет заменён <code>oldChild</code>. В случает если он уже есть в DOM, то сначала он будет удалён.</li>
+ <li><code>oldChild</code> элемент который будет заменён.</li>
<li><code>replacedNode</code> заменённый элемент. Тоже самое что и <code>oldChild</code>.</li>
</ul>
<h2 id="Example" name="Example">Пример</h2>
diff --git a/files/ru/web/api/performance/index.html b/files/ru/web/api/performance/index.html
index bc721672b6..47d7221e51 100644
--- a/files/ru/web/api/performance/index.html
+++ b/files/ru/web/api/performance/index.html
@@ -60,7 +60,7 @@ translation_of: Web/API/Performance
<dt>{{domxref("Performance.measure()")}}</dt>
<dd>Создаёт именованную {{domxref("DOMHighResTimeStamp","временну́ю метку")}} в буфере записей производительности браузера между двумя определёнными метками (известных как <em>start mark</em> (начальная метка) и <em>end mark </em>(конечная метка), соответственно).</dd>
<dt>{{domxref("Performance.now()")}}</dt>
- <dd>Возвращает объект {{domxref("DOMHighResTimeStamp")}}, представляющий количество миллисекунд, прошедших с начала момента отсчета.</dd>
+ <dd>Возвращает объект {{domxref("DOMHighResTimeStamp")}}, представляющий количество миллисекунд, прошедших с начала момента отсчёта.</dd>
<dt>{{domxref("Performance.setResourceTimingBufferSize()")}}</dt>
<dd>Устанавливает размер буфера измерения ресурсов браузера равным указанному числу объектов {{domxref("PerformanceEntry","записей производительности")}} {{domxref("PerformanceEntry.entryType","типа")}} "<code>resource</code>".</dd>
<dt>{{domxref("Performance.toJSON()")}}</dt>
diff --git a/files/ru/web/api/pointer_lock_api/index.html b/files/ru/web/api/pointer_lock_api/index.html
index 380e2b0888..e0fd2ace29 100644
--- a/files/ru/web/api/pointer_lock_api/index.html
+++ b/files/ru/web/api/pointer_lock_api/index.html
@@ -5,7 +5,7 @@ translation_of: Web/API/Pointer_Lock_API
---
<p><span class="seoSummary"><strong>Pointer lock</strong> <strong>API</strong>(прежнее название Mouse Lock API) </span><span style="line-height: 1.5;">обеспечивает методы ввода, основанные на движении мыши , а не только абсолютно позиционированых координатах курсора </span><span style="line-height: 1.5;">в окне. Это даёт вам доступ к необработанным движениям мыши, прикрепляет курсор мыши к любому элементу </span><span style="line-height: 1.5;">в окне браузера</span><span style="line-height: 1.5;">, предоставляет возможность вычислять координаты мыши не ограниченной областью окна проекции, и скрывает курсор из поля зрения. Это идеальное решение для 3D игр, например.</span></p>
-<p>Более того, API полезно для любых приложений, которые используют данные мыши для управления движениями, вращения объектов и изменения записей. Например пользователь может управлять наклоном просто двигая мышь, не нажимая ни на какие кнопки. Сами кнопки освобождаются под другие задачи. Примерами могут послужить  программы для просмотра карт или спутниковой съемки.</p>
+<p>Более того, API полезно для любых приложений, которые используют данные мыши для управления движениями, вращения объектов и изменения записей. Например пользователь может управлять наклоном просто двигая мышь, не нажимая ни на какие кнопки. Сами кнопки освобождаются под другие задачи. Примерами могут послужить  программы для просмотра карт или спутниковой съёмки.</p>
<p>Блокировка указателя позволяет вам получить доступ к данным мыши, даже если курсор ушёл за границы экрана или браузера. Например, ваши пользователи могут продолжать вращать или управлять 3D моделью движением мыши бесконечно. Без блокировки вращение или управление останавливается, как только курсор достигает края браузера или экрана. Геймеры теперь могут нажимать кнопки и водить курсором взад и вперёд, не боясь покинуть игровое поле и случайно переключится на другое приложение.</p>
diff --git a/files/ru/web/api/push_api/index.html b/files/ru/web/api/push_api/index.html
index 7fbf680b2b..77311c658f 100644
--- a/files/ru/web/api/push_api/index.html
+++ b/files/ru/web/api/push_api/index.html
@@ -36,7 +36,7 @@ translation_of: Web/API/Push_API
<p>Service worker будет запущен для того чтобы обрабатывать входящие push сообщения, которые будут доставлены в {{domxref("ServiceWorkerGlobalScope.onpush")}} обработчик события. Это позволит приложению реагировать на push сообщения, к примеру показывать нотификации через метод {{domxref("ServiceWorkerRegistration.showNotification()")}}.</p>
-<p>Каждая подписка уникальна по отношению к service worker. Адрес для подписки это уникальный <a href="http://www.w3.org/TR/capability-urls/">capability URL</a>: все что нужно чтобы отослать сообщение вашему приложению это адрес. Однако это URL необходимо держать в секрете, иначе любое другое приложение сможет слать push уведомление к вашему приложению.</p>
+<p>Каждая подписка уникальна по отношению к service worker. Адрес для подписки это уникальный <a href="http://www.w3.org/TR/capability-urls/">capability URL</a>: всё что нужно чтобы отослать сообщение вашему приложению это адрес. Однако это URL необходимо держать в секрете, иначе любое другое приложение сможет слать push уведомление к вашему приложению.</p>
<p>Использование service worker для получения push уведомлений может привести к повышенному потреблению ресурсов, например это может влиять на расход батареи. Во всех браузерах это работает по разному - нет стандарта на этот счёт. К примеру Firefox позволяет лишь ограниченное число уведомлений которое может быть отправлено приложению, а Chrome не имеет таких ограничений, однако обязывает показывать уведомление пользователю каждый раз, чтобы пользователь мог решить хочет он или нет принимать их дальше.</p>
diff --git a/files/ru/web/api/rtcpeerconnection/index.html b/files/ru/web/api/rtcpeerconnection/index.html
index 676d536252..55a24c974e 100644
--- a/files/ru/web/api/rtcpeerconnection/index.html
+++ b/files/ru/web/api/rtcpeerconnection/index.html
@@ -47,7 +47,7 @@ translation_of: Web/API/RTCPeerConnection
<dd>Событие объекта <code>RTCPeerConnection</code> возникает, когда свойство {{domxref("MediaStreamTrack.isolated", "isolated")}} на одном из объектов  {{domxref("MediaStreamTrack")}} , связанного с соединением изменяет своё значение. Объект трека является изолированным {{domxref("MediaStreamTrack.isolated", "isolated")}}, если его содержимое не может быть доступно содержащему его документу, по причине невозможности аутентификации, или объект трека прибыл не из источника происхождения страницы.<br>
Так же, доступно через свойство установки обработчика {{domxref("RTCPeerConnection.onisolationchange", "onisolationchange")}}.</dd>
<dt>{{domxref("RTCPeerConnection.negotiationneeded_event", "negotiationneeded")}}</dt>
- <dd>Событие объекта <code>RTCPeerConnection</code> возникает, когда необходимо запустить согласование (пересогласование) ICE соединения; может произойти при первом открытии соединения , или при необходимости принятия изменений условий сети. Получатель должен ответить, создав предложение и отправив его другому партнеру. <br>
+ <dd>Событие объекта <code>RTCPeerConnection</code> возникает, когда необходимо запустить согласование (пересогласование) ICE соединения; может произойти при первом открытии соединения , или при необходимости принятия изменений условий сети. Получатель должен ответить, создав предложение и отправив его другому партнёру. <br>
Так же, доступно через свойство установки обработчика {{domxref("RTCPeerConnection.onnegotiationneeded", "onnegotiationneeded")}}.</dd>
<dt>{{domxref("RTCPeerConnection.signalingstatechange_event", "signalingstatechange")}}</dt>
<dd>Событие <code>signalingstatechange</code> возникает, когда статус сигнализации ICE соединения изменился..<br>
diff --git a/files/ru/web/api/service_worker_api/using_service_workers/index.html b/files/ru/web/api/service_worker_api/using_service_workers/index.html
index 4fc2235590..363d4331eb 100644
--- a/files/ru/web/api/service_worker_api/using_service_workers/index.html
+++ b/files/ru/web/api/service_worker_api/using_service_workers/index.html
@@ -13,7 +13,7 @@ translation_of: Web/API/Service_Worker_API/Using_Service_Workers
<h2 id="Предпосылки_появления_Service_Workers">Предпосылки появления Service Workers</h2>
-<p>Одной из важнейших проблем, от которой страдали пользователи веб-приложений, была работа в условиях потери связи. Лучшее в мире веб-приложение оставит ужасное впечатление от использования, если вы не сможете его загрузить. Предпринималось много попыток создания технологий, которые бы решили эту проблему, и если верить страницам нашего <a href="/en-US/Apps/Build/Offline">Форума</a>, некоторые из вопросов были решены. Но все же наиважнейшей проблемой по-прежнему является отсутствие хорошего механизма для управления кешем ресурсов и настраиваемыми сетевыми запросами.<br>
+<p>Одной из важнейших проблем, от которой страдали пользователи веб-приложений, была работа в условиях потери связи. Лучшее в мире веб-приложение оставит ужасное впечатление от использования, если вы не сможете его загрузить. Предпринималось много попыток создания технологий, которые бы решили эту проблему, и если верить страницам нашего <a href="/en-US/Apps/Build/Offline">Форума</a>, некоторые из вопросов были решены. Но всё же наиважнейшей проблемой по-прежнему является отсутствие хорошего механизма для управления кешем ресурсов и настраиваемыми сетевыми запросами.<br>
<br>
Предыдущей попыткой была технология AppCache, казавшаяся хорошей идеей, потому как позволяла действительно просто указывать ресурсы для кеширования. Однако, эта технология допускает много предположений о том, что вы пытаетесь сделать, и затем с грохотом ломается, когда ваше приложение работает не в точности с этими допущениями. Чтобы получить больше информации по этой теме, прочитайте (неудачно названную, но хорошо написанную) статью Джейка Арчибальда <a href="http://alistapart.com/article/application-cache-is-a-douchebag">Application Cache is a Douchebag</a>.</p>
@@ -83,7 +83,7 @@ translation_of: Web/API/Service_Worker_API/Using_Service_Workers
<p>В первом примере код, идущий за вызовом функции <code>myFunction()</code>, будет ждать завершения вызова и возврата значения. Во втором примере <code>myFunction()</code> возвращает промис для <code>value</code>, в этом случае, последующий код сможет выполняться, не дожидаясь завершения основной работы функции. Когда промис разрешится, код, переданный методу <code>then</code>, будет выполнен асинхронно.</p>
-<p>А вот вам реальный пример: что, если мы хотим загружать изображения динамически, к тому же мы желаем удостовериться, что изображения загрузились до того, как они будут показаны? То, что мы хотим сделать, является стандартной задачей, но она все же может доставить головной боли. Мы можем использовать <code>.onload</code>, чтобы показать изображение только после загрузки, но что делать с событиями, которые могут произойти до того, как мы начнём их слушать? Мы могли бы использовать <code>.complete</code>, но оно все ещё ненадёжно, да и что делать с повторяющимися изображениями? И наконец все это работает синхронно, блокируя главный поток.</p>
+<p>А вот вам реальный пример: что, если мы хотим загружать изображения динамически, к тому же мы желаем удостовериться, что изображения загрузились до того, как они будут показаны? То, что мы хотим сделать, является стандартной задачей, но она всё же может доставить головной боли. Мы можем использовать <code>.onload</code>, чтобы показать изображение только после загрузки, но что делать с событиями, которые могут произойти до того, как мы начнём их слушать? Мы могли бы использовать <code>.complete</code>, но оно все ещё ненадёжно, да и что делать с повторяющимися изображениями? И наконец все это работает синхронно, блокируя главный поток.</p>
<p>Вместо этого мы можем написать собственный промис для работы с подобными случаями. (Вы можете найти исходный код в нашем примере <a href="https://github.com/mdn/promises-test">Promises test</a> или взглянуть на <a href="https://mdn.github.io/promises-test/">живое демо</a>.)</p>
@@ -177,7 +177,7 @@ imgLoad('myLittleVader.jpg').then((response) =&gt; {
<li>Далее, чтобы зарегистрировать сервис-воркера для этого сайта, мы используем функцию {{domxref("ServiceWorkerContainer.register()") }}. Сервис-воркер представляет собой JavaScript-файл приложения (обратите внимание, что URL указывается относительно "корня", а не места расположения JS-файла, регистрирующего сервис-воркер).</li>
<li>Параметр scope - не обязателен, он может быть использован для указания подмножества контента, которое вы хотите отдать под контроль сервис-воркера. В нашем случае, мы указали <code>'./sw-test/'</code>. Если вы не укажете его, то будет использовано значение по умолчанию; мы же указали его только в целях иллюстрации.</li>
<li>Метод <code>.then()</code> был использован для обработки успешной регистрации. Если промис разрешится успешно, то код, переданный этому методу, будет выполнен.</li>
- <li>Ну и наконец, в конец нашего промиса мы добавляем функцию <code>.catch()</code>, которая будет выполнена в случае, если промис будет отклонен.</li>
+ <li>Ну и наконец, в конец нашего промиса мы добавляем функцию <code>.catch()</code>, которая будет выполнена в случае, если промис будет отклонён.</li>
</ol>
<p>Предыдущий код регистрирует сервис-воркера, который работает в worker-контексте, и следовательно, не имеет доступа к DOM. Затем вы запускаете код в сервис-воркере, вне ваших страниц, чтобы контролировать их загрузку.</p>
diff --git a/files/ru/web/api/streams_api/index.html b/files/ru/web/api/streams_api/index.html
index 3ed4fc27ae..6f0decb53b 100644
--- a/files/ru/web/api/streams_api/index.html
+++ b/files/ru/web/api/streams_api/index.html
@@ -11,7 +11,7 @@ translation_of: Web/API/Streams_API
<p>Потоковая передача данных предполагает разбивку ресурса, который вы хотите получить через сеть, на мелкие кусочки и затем их обработку часть за частью. Это то, что браузеры делают в любом случае получения ассетов, чтобы показать их на страницах — видео буфер и другие ресурсы доступные для воспроизведения, и иногда это заметно на изображениях, загружающихся частями.</p>
-<p>Но методы работы с этим и данные никогда прежде не были доступны для JavaScript. Раньше, если мы хотели обработать часть ресурса, нам все равно пришлось бы загрузить весь файл (будь то видео, текстовый файл и т.п.), мы были бы обязаны скачать файл целиком, дождаться пока он будет приведён к необходимому формату и только потом работать с файлом после его полной загрузки.</p>
+<p>Но методы работы с этим и данные никогда прежде не были доступны для JavaScript. Раньше, если мы хотели обработать часть ресурса, нам всё равно пришлось бы загрузить весь файл (будь то видео, текстовый файл и т.п.), мы были бы обязаны скачать файл целиком, дождаться пока он будет приведён к необходимому формату и только потом работать с файлом после его полной загрузки.</p>
<p>С помощью потоков доступных в JavaScript меняется все — вы можете начать обрабатывать данные бит за битом как только данные появляются на стороне клиента, без необходимости генерировать буфер, строку или какой либо объект из потока.</p>
diff --git a/files/ru/web/api/touch_events/index.html b/files/ru/web/api/touch_events/index.html
index fd86517821..aabedcb58d 100644
--- a/files/ru/web/api/touch_events/index.html
+++ b/files/ru/web/api/touch_events/index.html
@@ -332,6 +332,6 @@ Log: &lt;pre id="log" style="border: 1px solid #ccc;"&gt;&lt;/pre&gt;</pre>
<p>В Firefox события касания отключены, когда отключён e10s (электролиз; <a href="/en-US/docs/Mozilla/Firefox/Multiprocess_Firefox">многопроцессорный Firefox</a>). e10s включён по умолчанию в Firefox, но может в конечном итоге отключаться в определённых ситуациях, например, когда установлены определённые инструменты специальных возможностей или надстройки Firefox, для работы которых требуется отключение e10s. Это означает, что даже на настольном компьютере / ноутбуке с сенсорным экраном сенсорные события не будут включены.</p>
-<p>Вы можете проверить, отключён ли e10s, перейдя в <code>about:support</code> и посмотрев на запись «Многопроцессорная Windows» в разделе «Основы приложения». 1/1 означает, что он включён, 0/1 означает отключен.</p>
+<p>Вы можете проверить, отключён ли e10s, перейдя в <code>about:support</code> и посмотрев на запись «Многопроцессорная Windows» в разделе «Основы приложения». 1/1 означает, что он включён, 0/1 означает отключён.</p>
<p>Если вы хотите принудительно включить e10s - чтобы явно повторно включить поддержку сенсорных событий - вам нужно перейти к <code>about:config</code> и создать новое логическое предпочтение <code>browser.tabs.remote.force-enable</code>. Установите значение <code>true</code>, перезапустите браузер, и e10s будет включён независимо от любых других настроек.</p>
diff --git a/files/ru/web/api/vrpose/position/index.html b/files/ru/web/api/vrpose/position/index.html
index ba2d4ab6cd..76b94b6fcc 100644
--- a/files/ru/web/api/vrpose/position/index.html
+++ b/files/ru/web/api/vrpose/position/index.html
@@ -32,7 +32,7 @@ translation_of: Web/API/VRPose/position
<p>Значение (типа Float)  {{domxref("Float32Array")}}, или ноль, если датчик VR не может предоставить данные о местоположении.</p>
<div class="note">
-<p><strong>Примечание</strong>: Пользовательские агенты могут предоставлять эмулированные значения положения с помощью таких методов, как моделирование шеи; при этом они все равно должны сообщать параметр {{domxref ("VRDisplayCapabilities.hasPosition")}} как ложные.</p>
+<p><strong>Примечание</strong>: Пользовательские агенты могут предоставлять эмулированные значения положения с помощью таких методов, как моделирование шеи; при этом они всё равно должны сообщать параметр {{domxref ("VRDisplayCapabilities.hasPosition")}} как ложные.</p>
</div>
<h2 id="Пример">Пример</h2>
diff --git a/files/ru/web/api/web_audio_api/visualizations_with_web_audio_api/index.html b/files/ru/web/api/web_audio_api/visualizations_with_web_audio_api/index.html
index 63e50078b7..a64b370af2 100644
--- a/files/ru/web/api/web_audio_api/visualizations_with_web_audio_api/index.html
+++ b/files/ru/web/api/web_audio_api/visualizations_with_web_audio_api/index.html
@@ -127,7 +127,7 @@ var dataArray = new Uint8Array(bufferLength);</pre>
<h2 id="Создание_частотной_гистограммы">Создание частотной гистограммы</h2>
-<p>Ещё одна визуализация, которую можно создать, - это частотные диаграммы (такие, как строит Winamp). В проекте Voice-change-O-matic есть реализация такой диаграммы. Давайте посмотрим на нее.</p>
+<p>Ещё одна визуализация, которую можно создать, - это частотные диаграммы (такие, как строит Winamp). В проекте Voice-change-O-matic есть реализация такой диаграммы. Давайте посмотрим на неё.</p>
<p>Сначала мы снова создаём анализатор и массив для данных, затем очищаем холст при помощи <code>clearRect()</code>. Единственное отличие от того, что мы делали раньше - ы том, что мы можем установить намного меньший размер fft. Таким образом, каждый столбец в диаграмме будет выглядеть как столбец, а не как тонкая полоска.</p>
diff --git a/files/ru/web/api/web_speech_api/using_the_web_speech_api/index.html b/files/ru/web/api/web_speech_api/using_the_web_speech_api/index.html
index c78a987ba5..c20696432a 100644
--- a/files/ru/web/api/web_speech_api/using_the_web_speech_api/index.html
+++ b/files/ru/web/api/web_speech_api/using_the_web_speech_api/index.html
@@ -221,7 +221,7 @@ recognition.onresult = function(event) {
<p>То же самое приложение из предыдущего примера.<br>
<a href="https://ru.web-speech-api-example.cheliz.top/">Ссылка на приложение</a> или <a href="https://github.com/Oleg-Miniuk/ru_web_speech_example">репозиторий</a> (клонируем, затем <code>npm install &amp;&amp; npm run start</code> в терминале, после чего открыть <strong>localhost:4001</strong> в браузере).<br>
<br>
- Пользовательский интерфейс включает в себя набор элементов для ввода текста, задания высоты тона, скорости воспроизведения и непосредственного выбора голоса, которым будет текст произнесен.</p>
+ Пользовательский интерфейс включает в себя набор элементов для ввода текста, задания высоты тона, скорости воспроизведения и непосредственного выбора голоса, которым будет текст произнесён.</p>
<p>После ввода текста вы можете нажать <strong>Play</strong> для запуска.</p>
diff --git a/files/ru/web/api/webrtc_api/using_data_channels/index.html b/files/ru/web/api/webrtc_api/using_data_channels/index.html
index 1c2e5b2521..5fc60dc11e 100644
--- a/files/ru/web/api/webrtc_api/using_data_channels/index.html
+++ b/files/ru/web/api/webrtc_api/using_data_channels/index.html
@@ -20,7 +20,7 @@ translation_of: Web/API/WebRTC_API/Using_data_channels
<li>Написать свои скрипты по согласованию транспорта данных, и сигнализированию другому узлу о необходимости присоединения к новому каналу данных.</li>
</ul>
-<p>Разберём оба случая, начиная с первого, как с наиболее распространенного.</p>
+<p>Разберём оба случая, начиная с первого, как с наиболее распространённого.</p>
<h3 id="Автоматический_режим_согласования">Автоматический режим согласования</h3>
diff --git a/files/ru/web/api/webvr_api/index.html b/files/ru/web/api/webvr_api/index.html
index a1dd13cbc9..a4809c7504 100644
--- a/files/ru/web/api/webvr_api/index.html
+++ b/files/ru/web/api/webvr_api/index.html
@@ -97,7 +97,7 @@ translation_of: Web/API/WebVR_API
<dt>{{domxref("Window.onvrdisplaydisconnect")}}</dt>
<dd>Представляет обработчик событий, который будет запускаться, когда совместимый VR-дисплей был отключён от компьютера (когда {{event("vrdisplaydisconnect")}} событие срабатывает).</dd>
<dt>{{domxref("Window.onvrdisplayactivate")}}</dt>
- <dd>Представляет обработчик событий, который будет выполняться, когда дисплей может быть представлен (когда {{event("vrdisplayactivate")}}событие срабатывает), например, HMD (Head Mounted Display) был перемещён, чтобы вывести его из режима ожидания, или проснулся, будучи перемещенным.</dd>
+ <dd>Представляет обработчик событий, который будет выполняться, когда дисплей может быть представлен (когда {{event("vrdisplayactivate")}}событие срабатывает), например, HMD (Head Mounted Display) был перемещён, чтобы вывести его из режима ожидания, или проснулся, будучи перемещённым.</dd>
<dt>{{domxref("Window.onvrdisplaydeactivate")}}</dt>
<dd>Представляет обработчик событий, который будет запускаться, когда дисплей больше не будет отображаться (когда {{event("vrdisplaydeactivate")}} событие срабатывает), например, HMD (Head Mounted Display) перешёл в режим ожидания или спящий режим из-за периода бездействия.</dd>
</dl>
diff --git a/files/ru/web/api/webvr_api/using_the_webvr_api/index.html b/files/ru/web/api/webvr_api/using_the_webvr_api/index.html
index 51cdf502b8..1a82614d89 100644
--- a/files/ru/web/api/webvr_api/using_the_webvr_api/index.html
+++ b/files/ru/web/api/webvr_api/using_the_webvr_api/index.html
@@ -28,7 +28,7 @@ translation_of: Web/API/WebVR_API/Using_the_WebVR_API
<p>После того, как Вы всё подготовили, можете проверить всё ли работает как следует. Для этого надо открыть <a href="https://mdn.github.io/webvr-tests/aframe-demo/">простой A-Frame пример</a> и убедиться, что сцена отображается и что можно перейти в VR режим по нажатию на кнопку в правом нижнем углу.</p>
-<p>Фреймворк <a href="https://aframe.io/">A-Frame</a> является лучшим вариантом, если Вы хотите быстро создать WebVR-совместимую сцену, не углубляясь в огромное количество JavaScript кода. Однако, пользуясь им, Вы не узнаете о работе с чистым WebVR API, а именно этим мы сейчас и займемся.</p>
+<p>Фреймворк <a href="https://aframe.io/">A-Frame</a> является лучшим вариантом, если Вы хотите быстро создать WebVR-совместимую сцену, не углубляясь в огромное количество JavaScript кода. Однако, пользуясь им, Вы не узнаете о работе с чистым WebVR API, а именно этим мы сейчас и займёмся.</p>
<h2 id="Introducing_our_demo">Introducing our demo</h2>
diff --git a/files/ru/web/api/window/alert/index.html b/files/ru/web/api/window/alert/index.html
index 7a08e860f4..4f610b0ec0 100644
--- a/files/ru/web/api/window/alert/index.html
+++ b/files/ru/web/api/window/alert/index.html
@@ -12,7 +12,7 @@ translation_of: Web/API/Window/alert
<pre class="syntaxbox">window.alert(<em>message</em>);</pre>
<ul>
- <li><code>message </code>это опциональная (необязательная) строка текста, которую вы хотите отобразить в диалоговом окне, или же объект, который будет преобразован в строку и отображен.</li>
+ <li><code>message </code>это опциональная (необязательная) строка текста, которую вы хотите отобразить в диалоговом окне, или же объект, который будет преобразован в строку и отображён.</li>
</ul>
<h2 id="Example" name="Example">Пример</h2>
diff --git a/files/ru/web/api/window/gamepaddisconnected_event/index.html b/files/ru/web/api/window/gamepaddisconnected_event/index.html
index f0aac41e38..55cada8e86 100644
--- a/files/ru/web/api/window/gamepaddisconnected_event/index.html
+++ b/files/ru/web/api/window/gamepaddisconnected_event/index.html
@@ -3,7 +3,7 @@ title: gamepaddisconnected
slug: Web/API/Window/gamepaddisconnected_event
translation_of: Web/API/Window/gamepaddisconnected_event
---
-<p>Событие <code>gampaddisconnected</code> вызывается, когда браузер обнаруживает, что геймпад был отключен.</p>
+<p>Событие <code>gampaddisconnected</code> вызывается, когда браузер обнаруживает, что геймпад был отключён.</p>
<h2 id="Основная_информация">Основная информация</h2>
diff --git a/files/ru/web/api/window/performance/index.html b/files/ru/web/api/window/performance/index.html
index 39e11ecbf8..7f765838c8 100644
--- a/files/ru/web/api/window/performance/index.html
+++ b/files/ru/web/api/window/performance/index.html
@@ -16,7 +16,7 @@ translation_of: Web/API/Window/performance
<dl>
<dt>{{domxref("Performance.now()", "performance.now()")}}</dt>
- <dd>Возвращает {{domxref("DOMHighResTimeStamp")}} представляющий количество миллисекунд прошедшее с момента отсчета.</dd>
+ <dd>Возвращает {{domxref("DOMHighResTimeStamp")}} представляющий количество миллисекунд прошедшее с момента отсчёта.</dd>
<dt><code>measure()</code></dt>
<dd>This method stores the <a href="http://www.w3.org/TR/hr-time/#domhighrestimestamp"><code>DOMHighResTimeStamp</code></a> duration between two marks along with the associated name (a "measure").</dd>
<dt><strong><code>getEntriesByType()</code></strong></dt>
diff --git a/files/ru/web/api/window/postmessage/index.html b/files/ru/web/api/window/postmessage/index.html
index 749e388816..22c6f6bf88 100644
--- a/files/ru/web/api/window/postmessage/index.html
+++ b/files/ru/web/api/window/postmessage/index.html
@@ -54,7 +54,7 @@ function receiveMessage(event)
<p><strong>Если вы не ожидаете получения сообщения от других сайтов, не добавляйте обработчики событий <code>message</code>.</strong> Это гарантированный способ избежать проблем с безопасностью.</p>
-<p>Если же вы хотите получать сообщения от других сайтов, то всегда необходимо идентифицировать отправителя, используя <code>origin</code> и возможно <code>source</code> свойства. Любой сайт (включая, например, <code class="nowiki">http://evil.example.com</code>) может отправлять сообщения любым другим, и у вас нет гарантии, что неизвестный отправитель не пошлёт вредоносные сообщения. Однако даже если отправитель известен, вам все равно необходимо всегда подтверждать синтаксис получаемого сообщения. Иначе, дыра в безопасности сайта, которому вы доверяете, может открыть дыру для межсайтового скриптинга на вашем сайте.</p>
+<p>Если же вы хотите получать сообщения от других сайтов, то всегда необходимо идентифицировать отправителя, используя <code>origin</code> и возможно <code>source</code> свойства. Любой сайт (включая, например, <code class="nowiki">http://evil.example.com</code>) может отправлять сообщения любым другим, и у вас нет гарантии, что неизвестный отправитель не пошлёт вредоносные сообщения. Однако даже если отправитель известен, вам всё равно необходимо всегда подтверждать синтаксис получаемого сообщения. Иначе, дыра в безопасности сайта, которому вы доверяете, может открыть дыру для межсайтового скриптинга на вашем сайте.</p>
<p><strong>Всегда конкретизируйте целевой первоисточник, а не просто <code>*</code>, когда вы используете <code>postMessage</code> для отправки данных другим окнам. Вредоносный сайт может изменить локацию окна без вашего ведома и затем перехватить данные, посылаемые с использованием </strong><code>postMessage</code>.</p>
diff --git a/files/ru/web/api/windoweventhandlers/onpopstate/index.html b/files/ru/web/api/windoweventhandlers/onpopstate/index.html
index 049f842c4f..e51aa9b186 100644
--- a/files/ru/web/api/windoweventhandlers/onpopstate/index.html
+++ b/files/ru/web/api/windoweventhandlers/onpopstate/index.html
@@ -38,7 +38,7 @@ history.back(); // alerts "location: http://example.com/example.html, state: nul
history.go(2); // alerts "location: http://example.com/example.html?page=3, state: {"page":3}
</pre>
-<p>Обратите внимание, что даже несмотря на то, что первоначальная запись истории (для <code>http://example.com/example.html</code>) не имеет объекта события, связанного с ней, событие <code>popstate</code> все равно произойдёт, когда мы активируем эту запись после второго вызова <code>history.back()</code>.</p>
+<p>Обратите внимание, что даже несмотря на то, что первоначальная запись истории (для <code>http://example.com/example.html</code>) не имеет объекта события, связанного с ней, событие <code>popstate</code> всё равно произойдёт, когда мы активируем эту запись после второго вызова <code>history.back()</code>.</p>
<h2 id="Specification" name="Specification">Спецификация</h2>
diff --git a/files/ru/web/api/xmlhttprequest/send/index.html b/files/ru/web/api/xmlhttprequest/send/index.html
index 34736d0716..ec462f241c 100644
--- a/files/ru/web/api/xmlhttprequest/send/index.html
+++ b/files/ru/web/api/xmlhttprequest/send/index.html
@@ -61,7 +61,7 @@ translation_of: Web/API/XMLHttpRequest/send
<tbody>
<tr>
<td><code>InvalidStateError</code></td>
- <td><code>send()</code> уже был вызван для запроса, и/или запрос завершен.</td>
+ <td><code>send()</code> уже был вызван для запроса, и/или запрос завершён.</td>
</tr>
<tr>
<td><code>NetworkError</code></td>
diff --git a/files/ru/web/api/xmlhttprequest/using_xmlhttprequest/index.html b/files/ru/web/api/xmlhttprequest/using_xmlhttprequest/index.html
index 0a7d0f9cf4..051a72f559 100644
--- a/files/ru/web/api/xmlhttprequest/using_xmlhttprequest/index.html
+++ b/files/ru/web/api/xmlhttprequest/using_xmlhttprequest/index.html
@@ -226,7 +226,7 @@ The second line.
<h4 id="Небольшой_классический_фреймворк">Небольшой классический фреймворк</h4>
-<p>Все данные эффекты достигаются с помощью веб браузера, когда вы отправляете {{ HTMLElement("form") }}. Но если вам требуется выполнить все операции с помощью лишь JavaScript, то вам придётся проинструктировать интерпретатор обо <em>всех</em> выполняемых операциях. Для, того чтобы отправлять формы с помощью <em>чистого</em> AJAX, потребуется слишком комплексное описание, чтобы тут рассуждать о нем во всех подробностях. В связи с этим, мы опубликовали здесь <strong>полный(но все ещё дидактический) фреймворк, </strong>который все же способен использовать все четыре способа отправки и, так же поддерживает <strong>файловую загрузку.</strong></p>
+<p>Все данные эффекты достигаются с помощью веб браузера, когда вы отправляете {{ HTMLElement("form") }}. Но если вам требуется выполнить все операции с помощью лишь JavaScript, то вам придётся проинструктировать интерпретатор обо <em>всех</em> выполняемых операциях. Для, того чтобы отправлять формы с помощью <em>чистого</em> AJAX, потребуется слишком комплексное описание, чтобы тут рассуждать о нем во всех подробностях. В связи с этим, мы опубликовали здесь <strong>полный(но все ещё дидактический) фреймворк, </strong>который всё же способен использовать все четыре способа отправки и, так же поддерживает <strong>файловую загрузку.</strong></p>
<div style="height: 400px; margin-bottom: 12px; overflow: auto;">
<pre class="brush: html notranslate">&lt;!doctype html&gt;
diff --git a/files/ru/web/css/@counter-style/additive-symbols/index.html b/files/ru/web/css/@counter-style/additive-symbols/index.html
index 4ea2a2dc87..b8b2d29f1d 100644
--- a/files/ru/web/css/@counter-style/additive-symbols/index.html
+++ b/files/ru/web/css/@counter-style/additive-symbols/index.html
@@ -7,7 +7,7 @@ translation_of: Web/CSS/@counter-style/additive-symbols
<p>Дескриптор аддитивных символов аналогичен дескриптору <span class="seoSummary"> {{cssxref('symbols')}} </span>и позволяет пользователю указывать символы которые будут использоваться для представлений счётчика, когда значение дескриптора<span class="seoSummary"> {{cssxref('system')}}  <em>аддитивное</em>. Дескриптор <code>additive-symbols</code> </span>определяет так называемые аддитивные кортежи<span class="seoSummary">, </span>каждый из которых представляет собой пару, содержащую символ и неотрицательный целочисленный вес<span class="seoSummary">.</span> Аддитивная система используется для построения систем нумерации знаков, таких как римские цифры.</p>
-<p>Когда значение системного дескриптора является циклическим, числовым, буквенным, символическим или фиксированным, дескриптор <code>symbols</code> используется вместо аддитивных символов для указания символов счетчика.</p>
+<p>Когда значение системного дескриптора является циклическим, числовым, буквенным, символическим или фиксированным, дескриптор <code>symbols</code> используется вместо аддитивных символов для указания символов счётчика.</p>
<p>{{cssinfo}}</p>
@@ -121,5 +121,5 @@ additive-symbols: 3 "0", 2 url(symbol.png);
<ul>
<li>{{Cssxref("list-style")}}, {{Cssxref("list-style-image")}}, {{Cssxref("list-style-position")}}</li>
- <li>{{cssxref("symbols", "symbols()")}}, функциональная запись, создающая анонимные стили счетчиков.</li>
+ <li>{{cssxref("symbols", "symbols()")}}, функциональная запись, создающая анонимные стили счётчиков.</li>
</ul>
diff --git a/files/ru/web/css/_doublecolon_first-letter/index.html b/files/ru/web/css/_doublecolon_first-letter/index.html
index 467a9e1e0b..2a2cd2f450 100644
--- a/files/ru/web/css/_doublecolon_first-letter/index.html
+++ b/files/ru/web/css/_doublecolon_first-letter/index.html
@@ -110,7 +110,7 @@ p::first-letter {
<tr>
<td>{{ SpecName('CSS2.1', 'selector.html#first-letter', '::first-letter') }}</td>
<td>{{ Spec2('CSS2.1') }}</td>
- <td>Нет измененный.</td>
+ <td>Нет изменений.</td>
</tr>
<tr>
<td>{{ SpecName('CSS1', '#the-first-letter-pseudo-element', '::first-letter') }}</td>
diff --git a/files/ru/web/css/_doublecolon_first-line/index.html b/files/ru/web/css/_doublecolon_first-line/index.html
index 274f6e85c2..fd96eb11da 100644
--- a/files/ru/web/css/_doublecolon_first-line/index.html
+++ b/files/ru/web/css/_doublecolon_first-line/index.html
@@ -95,7 +95,7 @@ p::first-line {
<tr>
<td>{{SpecName('CSS2.1', 'selector.html#first-line-pseudo', '::first-line')}}</td>
<td>{{Spec2('CSS2.1')}}</td>
- <td>Нет измененный.</td>
+ <td>Нет изменений.</td>
</tr>
<tr>
<td>{{SpecName('CSS1', '#the-first-line-pseudo-element', '::first-line')}}</td>
diff --git a/files/ru/web/css/color_value/index.html b/files/ru/web/css/color_value/index.html
index 9af9b77755..34c5749054 100644
--- a/files/ru/web/css/color_value/index.html
+++ b/files/ru/web/css/color_value/index.html
@@ -29,7 +29,7 @@ translation_of: Web/CSS/color_value
<h3 id="Ключевые_цвета">Ключевые цвета</h3>
-<p>Ключевые слова для цвета - это идентификаторы без учёта регистра, представляющие определённый цвет, например <code>red</code>, <code>blue</code>, <code>black</code> или <code>lightseagreen</code>. Хотя названия более или менее описывают их соответствующие цвета, они по существу искусственны, без строгого обоснования используемых имен. </p>
+<p>Ключевые слова для цвета - это идентификаторы без учёта регистра, представляющие определённый цвет, например <code>red</code>, <code>blue</code>, <code>black</code> или <code>lightseagreen</code>. Хотя названия более или менее описывают их соответствующие цвета, они по существу искусственны, без строгого обоснования используемых имён. </p>
<p>Есть несколько предостережений, которые следует учитывать при использовании ключевых слов цвета:</p>
diff --git a/files/ru/web/css/column-rule-color/index.html b/files/ru/web/css/column-rule-color/index.html
index 3019c7e417..9660ee90db 100644
--- a/files/ru/web/css/column-rule-color/index.html
+++ b/files/ru/web/css/column-rule-color/index.html
@@ -7,7 +7,7 @@ translation_of: Web/CSS/column-rule-color
---
<div>{{CSSRef}}</div>
-<p><a href="/en-US/docs/Web/CSS">CSS </a>свойство<strong> <code>column-rule-color</code></strong> устанавливает цвет линии, расположенной между колонками при мультиколоночной верстке.</p>
+<p><a href="/en-US/docs/Web/CSS">CSS </a>свойство<strong> <code>column-rule-color</code></strong> устанавливает цвет линии, расположенной между колонками при мультиколоночной вёрстке.</p>
<div>{{EmbedInteractiveExample("pages/css/column-rule-color.html")}}</div>
diff --git a/files/ru/web/css/column-rule-style/index.html b/files/ru/web/css/column-rule-style/index.html
index a012d070de..6733549044 100644
--- a/files/ru/web/css/column-rule-style/index.html
+++ b/files/ru/web/css/column-rule-style/index.html
@@ -7,7 +7,7 @@ translation_of: Web/CSS/column-rule-style
---
<div>{{ CSSRef}}</div>
-<p><a href="/en-US/docs/Web/CSS">CSS</a> свойство <strong><code>column-rule-style</code></strong> устанавливает стиль линии, расположенной между колонками при мультиколоночной верстке.</p>
+<p><a href="/en-US/docs/Web/CSS">CSS</a> свойство <strong><code>column-rule-style</code></strong> устанавливает стиль линии, расположенной между колонками при мультиколоночной вёрстке.</p>
<div>{{EmbedInteractiveExample("pages/css/column-rule-style.html")}}</div>
diff --git a/files/ru/web/css/column-rule/index.html b/files/ru/web/css/column-rule/index.html
index d48f043c0d..9baf364866 100644
--- a/files/ru/web/css/column-rule/index.html
+++ b/files/ru/web/css/column-rule/index.html
@@ -7,7 +7,7 @@ translation_of: Web/CSS/column-rule
---
<div>{{CSSRef}}</div>
-<p><a href="https://wiki.developer.mozilla.org/ru/docs/Web/CSS/Shorthand_properties">Краткая форма записи</a> <a href="/en-US/docs/Web/CSS">CSS</a> свойств <strong><code>column-rule</code></strong> устанавливает ширину, стиль и цвет линии, находящейся между колонками в мультиколоночной верстке.</p>
+<p><a href="https://wiki.developer.mozilla.org/ru/docs/Web/CSS/Shorthand_properties">Краткая форма записи</a> <a href="/en-US/docs/Web/CSS">CSS</a> свойств <strong><code>column-rule</code></strong> устанавливает ширину, стиль и цвет линии, находящейся между колонками в мультиколоночной вёрстке.</p>
<div>{{EmbedInteractiveExample("pages/css/column-rule.html")}}</div>
diff --git a/files/ru/web/css/css_animations/tips/index.html b/files/ru/web/css/css_animations/tips/index.html
index 15929f6220..5e76a2d9d4 100644
--- a/files/ru/web/css/css_animations/tips/index.html
+++ b/files/ru/web/css/css_animations/tips/index.html
@@ -79,7 +79,7 @@ translation_of: Web/CSS/CSS_Animations/Tips
<p>Вот что происходит, когда вызывается функция <code>play()</code> :</p>
<ol>
- <li>Список классов CSS в элементе сбрасывается до простого "box". Это приводит к удалению всех других классов, которые в настоящее время применяются к элементу, включая класс <code>"changing"</code> , который обрабатывает анимацию. Другими словами, мы удаляем анимационный эффект из элемента. Однако изменения в списке классов не вступают в силу до тех пор, пока не будет завершен перерасчет стиля и не произойдет обновление, отражающее это изменение.</li>
+ <li>Список классов CSS в элементе сбрасывается до простого "box". Это приводит к удалению всех других классов, которые в настоящее время применяются к элементу, включая класс <code>"changing"</code> , который обрабатывает анимацию. Другими словами, мы удаляем анимационный эффект из элемента. Однако изменения в списке классов не вступают в силу до тех пор, пока не будет завершён перерасчёт стиля и не произойдёт обновление, отражающее это изменение.</li>
<li>Чтобы убедиться, что стили пересчитаны, мы используем  {{domxref("window.requestAnimationFrame()")}} с колбэком. Наш колбэк выполняется непосредственно перед следующей перерисовкой документа. Проблема заключается в том,что, поскольку это происходит до перерисовки, перерасчёт стиля ещё не произошёл! </li>
<li>Наш колбэк ловко вызывает <code>requestAnimationFrame()</code> второй раз! На этот раз колбэк выполняется до следующей перерисовки, то есть после того, как произошла перерасчёт стиля. Этот колбэк добавляет класс <code>"changing"</code> обратно в элемент, так что перерисовка снова запустит анимацию.</li>
</ol>
diff --git a/files/ru/web/css/css_flexible_box_layout/backwards_compatibility_of_flexbox/index.html b/files/ru/web/css/css_flexible_box_layout/backwards_compatibility_of_flexbox/index.html
index 25b5be5ea0..1afa1ba1c0 100644
--- a/files/ru/web/css/css_flexible_box_layout/backwards_compatibility_of_flexbox/index.html
+++ b/files/ru/web/css/css_flexible_box_layout/backwards_compatibility_of_flexbox/index.html
@@ -11,7 +11,7 @@ translation_of: Web/CSS/CSS_Flexible_Box_Layout/Backwards_Compatibility_of_Flexb
<p>Как  и все спецификации CSS, flexbox претерпела огромное количество изменений, прежде чем стать Кандидатом в рекомендации W3C. У спецификации в этом статусе не должно быть значительных изменений, однако с предыдущими итерациями все было иначе.</p>
-<p>Flexbox был реализован экспериментальным путём в нескольких браузерах. В то время метод создания экспериментальных реализаций подразумевал использование вендорных префиксов. Идея этих префиксов была в том, чтобы позволить инженерам браузеров и веб-разработчикам исследовать и протестировать новшества спецификации без конфликтов с другими реализациями. Идея заключалась в том, чтобы не использовать экспериментальные реализации на продакшене. Однако, в конечном счёте префиксы все равно попали в продакшн, и изменения в экспериментальной спецификации вынудили людей обновлять сайты, чтобы этой самой спецификации соответствовать.</p>
+<p>Flexbox был реализован экспериментальным путём в нескольких браузерах. В то время метод создания экспериментальных реализаций подразумевал использование вендорных префиксов. Идея этих префиксов была в том, чтобы позволить инженерам браузеров и веб-разработчикам исследовать и протестировать новшества спецификации без конфликтов с другими реализациями. Идея заключалась в том, чтобы не использовать экспериментальные реализации на продакшене. Однако, в конечном счёте префиксы всё равно попали в продакшн, и изменения в экспериментальной спецификации вынудили людей обновлять сайты, чтобы этой самой спецификации соответствовать.</p>
<p><a href="https://www.w3.org/TR/2009/WD-css3-flexbox-20090723/">В 2009</a> спецификация выглядела совсем по-другому. Чтобы создать flex-контейнер, вам нужно было использовать <code>display: box</code> и несколько <code>box-*</code> свойств, которые делали то, что сегодня вы понимаете под flexbox.</p>
diff --git a/files/ru/web/css/css_grid_layout/layout_using_named_grid_lines/index.html b/files/ru/web/css/css_grid_layout/layout_using_named_grid_lines/index.html
index 66e8c5ac2d..6d4d62e90d 100644
--- a/files/ru/web/css/css_grid_layout/layout_using_named_grid_lines/index.html
+++ b/files/ru/web/css/css_grid_layout/layout_using_named_grid_lines/index.html
@@ -79,7 +79,7 @@ translation_of: Web/CSS/CSS_Grid_Layout/Layout_using_Named_Grid_Lines
<h3 id="Присвоение_линиям_нескольких_имён">Присвоение линиям нескольких имён</h3>
-<p>При необходимости можно присвоить строке более одного имени. Например, <code>sidebar-end</code> для обозначении конца области <code>sidebar</code>, и <code>main-start</code> для начала области <code>main</code>. Укажите имена внутри квадратных скобок через пробел <code>[sidebar-end main-start]</code>. В дальнейшем вы можете обращаться к этой строке по любому из этих имен.</p>
+<p>При необходимости можно присвоить строке более одного имени. Например, <code>sidebar-end</code> для обозначении конца области <code>sidebar</code>, и <code>main-start</code> для начала области <code>main</code>. Укажите имена внутри квадратных скобок через пробел <code>[sidebar-end main-start]</code>. В дальнейшем вы можете обращаться к этой строке по любому из этих имён.</p>
<h2 id="Неявные_области_сетки_из_именованных_линий">Неявные области сетки из именованных линий</h2>
diff --git a/files/ru/web/css/css_grid_layout/line-based_placement_with_css_grid/index.html b/files/ru/web/css/css_grid_layout/line-based_placement_with_css_grid/index.html
index 35feac5051..cbbb43c16f 100644
--- a/files/ru/web/css/css_grid_layout/line-based_placement_with_css_grid/index.html
+++ b/files/ru/web/css/css_grid_layout/line-based_placement_with_css_grid/index.html
@@ -372,7 +372,7 @@ original_slug: >-
<p>Мы также можем отсчитывать грид-линии с конца, то есть с последней (для русского языка - самой правой) колоночной и последней (самой нижней) строчной линий. Индекс этих линий будет <code>-1</code>, а линий непосредственно перед ними <code>-2,</code> и так далее. Нужно помнить, что под последней линией понимается последняя линия явного грида (<em>explicit grid)</em>, то есть грида, определённого с помощью <code>grid-template-columns</code> и<code>grid-template-rows.</code> Любые линии строк и колонок, добавленные неявным гридом (<em>implicit grid)</em> не считаются.</p>
-<p>В примере ниже мы "перевернули" определение нашего грида, при размещении элементов задавая линии с конца, то есть, от правого и нижнего краев.</p>
+<p>В примере ниже мы "перевернули" определение нашего грида, при размещении элементов задавая линии с конца, то есть, от правого и нижнего краёв.</p>
<div class="hidden">
<pre class="brush: css notranslate">* {box-sizing: border-box;}
diff --git a/files/ru/web/css/font-variant-ligatures/index.html b/files/ru/web/css/font-variant-ligatures/index.html
index 0415ac37bb..876afcdedb 100644
--- a/files/ru/web/css/font-variant-ligatures/index.html
+++ b/files/ru/web/css/font-variant-ligatures/index.html
@@ -37,7 +37,7 @@ font-variant-ligatures: unset;
<dt><code>normal</code></dt>
<dd>Это ключевое слово ведёт к активации обычных лигатур и контекстных форм, необходимых для корректного рендеринга. Активируемые лигатуры и формы зависят от шрифта, языка и типа письма. Это значение по умолчанию.</dd>
<dt><code>none</code></dt>
- <dd>Это ключевое слово устанавливает, что все лигатуры и контекстные формы отключены, даже распространенные.</dd>
+ <dd>Это ключевое слово устанавливает, что все лигатуры и контекстные формы отключены, даже распространённые.</dd>
<dt>&lt;<em>common-lig-values&gt;</em></dt>
<dd>Эти значения контролируют наиболее распространённые лигатуры, такие как лигатуры для сочетаний <code>fi</code>, <code>ffi</code>, <code>th</code> или подобных. Они относятся к значениям <code>liga</code> и <code>clig</code> в OpenType. Допустимы два значения:
<ul>
diff --git a/files/ru/web/css/hyphens/index.html b/files/ru/web/css/hyphens/index.html
index 6bf95b2456..00858e50a1 100644
--- a/files/ru/web/css/hyphens/index.html
+++ b/files/ru/web/css/hyphens/index.html
@@ -53,7 +53,7 @@ hyphens: unset;
<dl>
<dt>U+2010 (HYPHEN)</dt>
- <dd><font>«Жёсткий» дефис указывает на возможность видимого разрыва строки. </font><font>Даже если строка в этом месте не переносится, дефис все равно отображается.</font></dd>
+ <dd><font>«Жёсткий» дефис указывает на возможность видимого разрыва строки. </font><font>Даже если строка в этом месте не переносится, дефис всё равно отображается.</font></dd>
<dt>U+00AD (SHY)</dt>
<dd>Невидимый <font>«</font>мягкий<font>»</font> перенос. Этот символ не отображается визуально, вместо этого он отмечает место, где браузер должен разорвать слово, если расстановка переносов необходима. В HTML, используйте <code>&amp;shy;</code> для вставки мягкого дефиса.</dd>
</dl>
diff --git a/files/ru/web/css/min-height/index.html b/files/ru/web/css/min-height/index.html
index 19ec058b88..d1c7db4ec1 100644
--- a/files/ru/web/css/min-height/index.html
+++ b/files/ru/web/css/min-height/index.html
@@ -57,7 +57,7 @@ min-height: unset;
<dt><code>fill-available</code>{{ experimental_inline() }}</dt>
<dd>Высота родительского блока минус вертикальные <code>margin</code>, <code>border</code>, и <code>padding</code>. (Обратите внимание, что некоторые браузеры реализуют устаревшее имя для этого ключевого слова., <code>available</code>.)</dd>
<dt><code>fit-content</code> {{ experimental_inline() }}</dt>
- <dd>Согласно CSS3 Box, это синоним <code>min-content</code>. CSS3 Sizing определяет более сложный алгоритм, но ни один браузер не реализует его даже экспериментальным путем.</dd>
+ <dd>Согласно CSS3 Box, это синоним <code>min-content</code>. CSS3 Sizing определяет более сложный алгоритм, но ни один браузер не реализует его даже экспериментальным путём.</dd>
</dl>
<h3 id="Формальный_синтаксис">Формальный синтаксис</h3>
diff --git a/files/ru/web/css/overflow-block/index.html b/files/ru/web/css/overflow-block/index.html
index 2756cb66f9..6acc798dce 100644
--- a/files/ru/web/css/overflow-block/index.html
+++ b/files/ru/web/css/overflow-block/index.html
@@ -37,7 +37,7 @@ overflow-block: unset;
<dt><code>scroll</code></dt>
<dd>При необходимости содержимое обрезается, чтобы поместиться в размер блока в поле заполнения. Браузеры отображают полосы прокрутки вне зависимости от того, вырезано ли содержимое. (Это предотвращает появление или исчезновение полос прокрутки при изменении содержимого.) Принтеры могут по-прежнему печатать переполненное содержимое.</dd>
<dt><code>auto</code></dt>
- <dd>Зависит от пользовательского агента. Если содержимое помещается в поле дополнения, оно выглядит так же, как visible, но все же устанавливает новый контекст форматирования блока. Настольные браузеры устанавливают полосы прокрутки, если содержимое переполняется.</dd>
+ <dd>Зависит от пользовательского агента. Если содержимое помещается в поле дополнения, оно выглядит так же, как visible, но всё же устанавливает новый контекст форматирования блока. Настольные браузеры устанавливают полосы прокрутки, если содержимое переполняется.</dd>
</dl>
<h3 id="Формат_синтаксиса">Формат синтаксиса</h3>
diff --git a/files/ru/web/css/radial-gradient()/index.html b/files/ru/web/css/radial-gradient()/index.html
index 297ef580c4..4b1579894f 100644
--- a/files/ru/web/css/radial-gradient()/index.html
+++ b/files/ru/web/css/radial-gradient()/index.html
@@ -11,7 +11,7 @@ translation_of: Web/CSS/radial-gradient()
-<p>Как и любой градиент, радиальный градиент не имеет <a href="https://developer.mozilla.org/en-US/docs/CSS/image#no_intrinsic">внутренних размеров</a>, то есть заданных или предпочитаемых размеров, как и заданного коэффициента соотношения сторон. Его итоговый размер будет соответствовать размеру элемента к которому он применен.</p>
+<p>Как и любой градиент, радиальный градиент не имеет <a href="https://developer.mozilla.org/en-US/docs/CSS/image#no_intrinsic">внутренних размеров</a>, то есть заданных или предпочитаемых размеров, как и заданного коэффициента соотношения сторон. Его итоговый размер будет соответствовать размеру элемента к которому он применён.</p>
<p>Чтобы создать повторяющийся радиальный градиент, который будет заполнять контейнер, необходимо использовать функцию {{cssxref("repeating-radial-gradient")}}.</p>
diff --git a/files/ru/web/css/repeating-linear-gradient()/index.html b/files/ru/web/css/repeating-linear-gradient()/index.html
index c3160fb98a..22766068a9 100644
--- a/files/ru/web/css/repeating-linear-gradient()/index.html
+++ b/files/ru/web/css/repeating-linear-gradient()/index.html
@@ -23,7 +23,7 @@ repeating-linear-gradient(0deg, blue, green 40%, red);
<p>С каждым повтором позиции цветов сдвигаются на величину кратную длине базового градиента (расстояние от позиции последнего цвета до позиции первого). Таким образом что позиция каждого последнего цвета совпадает с позицией стартового цвета. И если цвета отличаются это приведёт к резкому визуальному переходу.</p>
-<p>Повторяющийся линейный градиент (как и любой прочий градиент) <a href="https://developer.mozilla.org/en-US/docs/CSS/image#no_intrinsic">не имеет размерностей по умолчанию</a>; т.е. у него нет предопределённого размера либо пропорции. Его размер будет совпадать с размерами элемента к которому он применен.</p>
+<p>Повторяющийся линейный градиент (как и любой прочий градиент) <a href="https://developer.mozilla.org/en-US/docs/CSS/image#no_intrinsic">не имеет размерностей по умолчанию</a>; т.е. у него нет предопределённого размера либо пропорции. Его размер будет совпадать с размерами элемента к которому он применён.</p>
<div class="note">
<p><strong>Примечание:</strong> Поскольку <code>&lt;gradient&gt;</code> относится к типу данных <code>&lt;image&gt;</code> , он может быть использован только там где применим тип <code>&lt;image&gt;</code>. По этой причине <code>repeating-linear-gradient()</code> не будет работать с {{Cssxref("background-color")}} и прочими свойствами использующими тип данных {{cssxref("&lt;color&gt;")}}.</p>
diff --git a/files/ru/web/events/index.html b/files/ru/web/events/index.html
index a796d5ade0..33acb903c0 100644
--- a/files/ru/web/events/index.html
+++ b/files/ru/web/events/index.html
@@ -198,11 +198,11 @@ translation_of: Web/Events
</tr>
<tr>
<td>{{Event("transitioncancel")}}</td>
- <td><a href="/en-US/docs/Web/CSS/CSS_Transitions">CSS переход</a> отменен.</td>
+ <td><a href="/en-US/docs/Web/CSS/CSS_Transitions">CSS переход</a> отменён.</td>
</tr>
<tr>
<td>{{Event("transitionend")}}</td>
- <td><a href="/en-US/docs/Web/CSS/CSS_Transitions">CSS переход</a> завершен.</td>
+ <td><a href="/en-US/docs/Web/CSS/CSS_Transitions">CSS переход</a> завершён.</td>
</tr>
<tr>
<td>{{Event("transitionrun")}}</td>
@@ -302,7 +302,7 @@ translation_of: Web/Events
</tr>
<tr>
<td>{{Event("resize")}}</td>
- <td>Размер просмотра документа изменен.</td>
+ <td>Размер просмотра документа изменён.</td>
</tr>
<tr>
<td>{{Event("scroll")}}</td>
@@ -509,7 +509,7 @@ translation_of: Web/Events
</tr>
<tr>
<td>{{Event("durationchange")}}</td>
- <td>Атрибут <code>duration</code> был обновлен.</td>
+ <td>Атрибут <code>duration</code> был обновлён.</td>
</tr>
<tr>
<td>{{Event("emptied")}}</td>
@@ -2759,7 +2759,7 @@ translation_of: Web/Events
<td><a href="/en-US/docs/Web/Reference/Events/DOMTitleChanged">DOMTitleChanged</a></td>
<td></td>
<td><em>Addons specifc</em></td>
- <td>Заголовок окна изменен.</td>
+ <td>Заголовок окна изменён.</td>
</tr>
<tr>
<td><a href="/en-US/docs/Web/Reference/Events/DOMLinkAdded">DOMLinkAdded</a></td>
diff --git a/files/ru/web/guide/ajax/getting_started/index.html b/files/ru/web/guide/ajax/getting_started/index.html
index aee30a7337..31d0dd8881 100644
--- a/files/ru/web/guide/ajax/getting_started/index.html
+++ b/files/ru/web/guide/ajax/getting_started/index.html
@@ -115,7 +115,7 @@ httpRequest.send(null);
}
</pre>
-<p>Теперь, после проверки состояния запроса и статуса HTTP-ответа, вы можете делать с данными, полученными от сервера, все что угодно. Есть два способа получить доступ к данным:</p>
+<p>Теперь, после проверки состояния запроса и статуса HTTP-ответа, вы можете делать с данными, полученными от сервера, всё что угодно. Есть два способа получить доступ к данным:</p>
<ul>
<li><code>httpRequest.responseText</code> – возвращает ответ сервера в виде строки текста.</li>
@@ -252,7 +252,7 @@ var root_node = xmldoc.getElementsByTagName('root').item(0);
alert(root_node.firstChild.data);
</pre>
-<p>Этот код берет объект <code>XMLDocument</code>, возвращаемый <code>responseXML</code> и использует методы DOM для доступа к данным, содержащимся в документе XML. Посмотреть <code>test.xml</code> можно <a class="external" href="http://www.akvi.ru/mozdev/test.xml" rel="follow">здесь</a>, а обновлённый скрипт <a class="external" href="http://www.akvi.ru/mozdev/httprequest_test_xml.html" rel="follow">здесь</a>.</p>
+<p>Этот код берёт объект <code>XMLDocument</code>, возвращаемый <code>responseXML</code> и использует методы DOM для доступа к данным, содержащимся в документе XML. Посмотреть <code>test.xml</code> можно <a class="external" href="http://www.akvi.ru/mozdev/test.xml" rel="follow">здесь</a>, а обновлённый скрипт <a class="external" href="http://www.akvi.ru/mozdev/httprequest_test_xml.html" rel="follow">здесь</a>.</p>
<p>Чтобы узнать больше о методах DOM, посмотрите <a class="external" href="http://www.mozilla.org/docs/dom/">реализация DOM в Mozilla</a>.</p>
diff --git a/files/ru/web/guide/html/content_categories/index.html b/files/ru/web/guide/html/content_categories/index.html
index 1334570d7b..6f9a4f933d 100644
--- a/files/ru/web/guide/html/content_categories/index.html
+++ b/files/ru/web/guide/html/content_categories/index.html
@@ -161,7 +161,7 @@ translation_of: Web/Guide/HTML/Content_categories
<pre>&lt;p&gt;Мы почитаем следующие истины &lt;del&gt;&lt;em&gt;священными &amp;amp; неоспоримыми&lt;/em&gt;&lt;/del&gt; &lt;ins&gt;само собой разумеющимися&lt;/ins&gt;.&lt;/p&gt;
</pre>
-<p>Если удалить эти элементы, данный фрагмент все равно будет представлять собой валидный HTML.</p>
+<p>Если удалить эти элементы, данный фрагмент всё равно будет представлять собой валидный HTML.</p>
<pre>&lt;p&gt;Мы почитаем следующие истины &lt;em&gt;священными &amp;amp; неоспоримыми&lt;/em&gt; само собой разумеющимися.&lt;/p&gt;
</pre>
diff --git a/files/ru/web/html/element/body/index.html b/files/ru/web/html/element/body/index.html
index f18863b449..b18467c540 100644
--- a/files/ru/web/html/element/body/index.html
+++ b/files/ru/web/html/element/body/index.html
@@ -97,7 +97,7 @@ translation_of: Web/HTML/Element/body
<dt>{{htmlattrdef("onredo")}}</dt>
<dd>Функция для вызова, когда произошло продвижение пользователя вперёд по истории транзакций (например, обновление страницы).</dd>
<dt>{{htmlattrdef("onresize")}}</dt>
- <dd>Функция для вызова, когда размер документа был изменен.</dd>
+ <dd>Функция для вызова, когда размер документа был изменён.</dd>
<dt>{{htmlattrdef("onstorage")}}</dt>
<dd>Функция для вызова, когда изменяется содержимое хранилища (<a href="/ru/docs/Web/API/Web_Storage_API">Web Storage</a>).</dd>
<dt>{{htmlattrdef("onundo")}}</dt>
diff --git a/files/ru/web/html/element/input/range/index.html b/files/ru/web/html/element/input/range/index.html
index e4f349c376..2028c5aae8 100644
--- a/files/ru/web/html/element/input/range/index.html
+++ b/files/ru/web/html/element/input/range/index.html
@@ -322,7 +322,7 @@ translation_of: Web/HTML/Element/input/range
<h3 id="transform_rotate-90deg">transform: rotate(-90deg)</h3>
-<p>Но вы, все же, можете сделать вертикальный контролл используя горизонтальный контролл. Самый простой способ - использовать CSS: применяя {{cssxref("transform")}} для поворота элемента на 90 градусов. Посмотрим:</p>
+<p>Но вы, всё же, можете сделать вертикальный контролл используя горизонтальный контролл. Самый простой способ - использовать CSS: применяя {{cssxref("transform")}} для поворота элемента на 90 градусов. Посмотрим:</p>
<div id="Orientation_sample3">
<h4 id="HTML_2">HTML</h4>
diff --git a/files/ru/web/html/element/link/index.html b/files/ru/web/html/element/link/index.html
index 82be65b592..e70c2d87f3 100644
--- a/files/ru/web/html/element/link/index.html
+++ b/files/ru/web/html/element/link/index.html
@@ -69,7 +69,7 @@ original_slug: Web/HTML/Element/ссылка
<dt><code>anonymous</code></dt>
<dd>Cross-origin запрос (т.е. с HTTP-заголовком {{HTTPHeader("Origin")}}) выполняется, но учётные данные не отправляются (т.е. нет cookie, сертификата X.509, или базовой аутентификации HTTP). Если сервер не передал учётные данные исходному сайту (нет настроенного HTTP-заголовка {{HTTPHeader("Access-Control-Allow-Origin")}}),  изображение будет искажено, а его использование ограничено.</dd>
<dt><code>use-credentials</code></dt>
- <dd>Cross-origin запрос (т.е. с HTTP-заголовком <code>Origin</code>) выполняется вместе с отправкой учетных данных (т.е. выполняется аутентификация cookie, сертификата, и/или базового HTTP). Если сервер не передал учётные данные исходному сайту (через HTTP-заголовок {{HTTPHeader("Access-Control-Allow-Credentials")}}), ресурс будет искажён, а его использование ограничено.</dd>
+ <dd>Cross-origin запрос (т.е. с HTTP-заголовком <code>Origin</code>) выполняется вместе с отправкой учётных данных (т.е. выполняется аутентификация cookie, сертификата, и/или базового HTTP). Если сервер не передал учётные данные исходному сайту (через HTTP-заголовок {{HTTPHeader("Access-Control-Allow-Credentials")}}), ресурс будет искажён, а его использование ограничено.</dd>
</dl>
Если атрибут отсутствует, ресурс загружается без запроса {{Glossary("CORS")}} (т.е. без отправки HTTP-заголовка <code>Origin)</code>, предотвращая его незагрязненное использование. В случае невалидности, он обрабатывается как при использовании ключевого слова <strong>anonymous.</strong> Для получения дополнительной информации смотрите  <a href="/en-US/docs/Web/HTML/CORS_settings_attributes">CORS settings attributes</a>.</dd>
<dt>{{HTMLAttrDef("href")}}</dt>
diff --git a/files/ru/web/html/element/meta/index.html b/files/ru/web/html/element/meta/index.html
index 86f9522953..e5cef07fa3 100644
--- a/files/ru/web/html/element/meta/index.html
+++ b/files/ru/web/html/element/meta/index.html
@@ -286,12 +286,12 @@ translation_of: Web/HTML/Element/meta
<tr>
<td><code>maximum-scale</code></td>
<td>положительное число между <code>0.0</code> и <code>10.0</code></td>
- <td>Определяет максимальное значение зума; должен быть больше или равен минимальному масштабу или быть неопределенным.</td>
+ <td>Определяет максимальное значение зума; должен быть больше или равен минимальному масштабу или быть неопределённым.</td>
</tr>
<tr>
<td><code>minimum-scale</code></td>
<td>положительное число между <code>0.0</code> и <code>10.0</code></td>
- <td>Определяет минимальное значение зума; должен быть меньше или равен максимальному масштабу или быть неопределенным.</td>
+ <td>Определяет минимальное значение зума; должен быть меньше или равен максимальному масштабу или быть неопределённым.</td>
</tr>
<tr>
<td><code>user-scalable</code></td>
diff --git a/files/ru/web/html/element/progress/index.html b/files/ru/web/html/element/progress/index.html
index 5746e3259a..02c9171f49 100644
--- a/files/ru/web/html/element/progress/index.html
+++ b/files/ru/web/html/element/progress/index.html
@@ -51,7 +51,7 @@ translation_of: Web/HTML/Element/progress
<dt>{{ htmlattrdef("max") }}</dt>
<dd>Этот атрибут описывает сколько затрат требует задача, указанная элементом  <code>progress</code>. Атрибут <code>max</code>, в случае указания, должен быть положительным, также, возможно применение числа с плавающей точкой.  Значение по умолчанию 1.</dd>
<dt>{{ htmlattrdef("value") }}</dt>
- <dd>Этот атрибут указывает какая часть задачи была выполнена. Это может быть число с плавающей точкой от 0 до <code>max</code>, или между 0 и 1, если <code>max</code> не указан. Если атрибут <code>value</code> не указан, индикатор выполнения не определён; это указывает на то, что действие продолжается без указания на то, сколько времени оно займет.</dd>
+ <dd>Этот атрибут указывает какая часть задачи была выполнена. Это может быть число с плавающей точкой от 0 до <code>max</code>, или между 0 и 1, если <code>max</code> не указан. Если атрибут <code>value</code> не указан, индикатор выполнения не определён; это указывает на то, что действие продолжается без указания на то, сколько времени оно займёт.</dd>
</dl>
<div class="note">
diff --git a/files/ru/web/html/element/track/index.html b/files/ru/web/html/element/track/index.html
index f7d61a50c9..8c2c134f77 100644
--- a/files/ru/web/html/element/track/index.html
+++ b/files/ru/web/html/element/track/index.html
@@ -76,7 +76,7 @@ translation_of: Web/HTML/Element/track
<ul>
<li>Подписи обеспечивают транскрипцию и, возможно, перевод аудио.</li>
<li>Подписи могут включать важную невербальную информацию, такую ​​как музыкальные сигналы или звуковые эффекты. Возможно указывать источник сигналов (например, музыка, текст, персонаж).</li>
- <li>Подходит для пользователей со слабым слухом или когда звук отключен.</li>
+ <li>Подходит для пользователей со слабым слухом или когда звук отключён.</li>
</ul>
</li>
<li><code>descriptions</code>
diff --git a/files/ru/web/html/global_attributes/index.html b/files/ru/web/html/global_attributes/index.html
index c662d66d36..eeecd87c6c 100644
--- a/files/ru/web/html/global_attributes/index.html
+++ b/files/ru/web/html/global_attributes/index.html
@@ -95,7 +95,7 @@ translation_of: Web/HTML/Global_attributes
<dd>Это перечислимый атрибут, используемый для того, чтобы указать, следует ли переводить значения атрибутов элемента и его текстовое содержимое (содержимое узла {{domxref("Text")}}) при локализации страницы. Этот атрибут может принимать следующие значения:
<ul>
<li><em>пустая строка</em> или <code>"yes"</code> указывает, что элемент должен быть переведён;</li>
- <li><code>"no</code>" указывает, что элемент не должен быть переведен.</li>
+ <li><code>"no</code>" указывает, что элемент не должен быть переведён.</li>
</ul>
</dd>
</dl>
diff --git a/files/ru/web/http/cors/errors/corsdidnotsucceed/index.html b/files/ru/web/http/cors/errors/corsdidnotsucceed/index.html
index a9a5569ce3..9a22daaa31 100644
--- a/files/ru/web/http/cors/errors/corsdidnotsucceed/index.html
+++ b/files/ru/web/http/cors/errors/corsdidnotsucceed/index.html
@@ -17,7 +17,7 @@ translation_of: Web/HTTP/CORS/Errors/CORSDidNotSucceed
<h2 id="Что_произошло"><strong>Что произошло?</strong></h2>
-<p>Запрос {{Glossary("HTTP")}}, использующий {{Glossary("CORS")}} не был выполнен, потому что подключение через HTTP не было выполнено либо на сетевом уровне или на уровне протокола. Ошибка не имеет прямого отношения к CORS, но все равно считается как фундаментальная.</p>
+<p>Запрос {{Glossary("HTTP")}}, использующий {{Glossary("CORS")}} не был выполнен, потому что подключение через HTTP не было выполнено либо на сетевом уровне или на уровне протокола. Ошибка не имеет прямого отношения к CORS, но всё равно считается как фундаментальная.</p>
<h2 id="Смотрите_также">Смотрите также</h2>
diff --git a/files/ru/web/http/csp/index.html b/files/ru/web/http/csp/index.html
index f1c128ab7f..15b073e60d 100644
--- a/files/ru/web/http/csp/index.html
+++ b/files/ru/web/http/csp/index.html
@@ -94,7 +94,7 @@ translation_of: Web/HTTP/CSP
<h2 id="Тестирование_настройки_политики">Тестирование настройки политики</h2>
-<p>Для облегчения развёртывания можно настроить развёртывание CSP в режиме report-only. Таким образом, политика не будет ограничивать загрузку, но будет сообщать обо всех нарушениях на указанный в заголовке URI. Кроме того, заголовок report-only может использоваться для тестирования новой политики без полноценного развертывания.</p>
+<p>Для облегчения развёртывания можно настроить развёртывание CSP в режиме report-only. Таким образом, политика не будет ограничивать загрузку, но будет сообщать обо всех нарушениях на указанный в заголовке URI. Кроме того, заголовок report-only может использоваться для тестирования новой политики без полноценного развёртывания.</p>
<p>Для определения вашей политики вы можете использовать заголовок {{HTTPHeader("Content-Security-Policy-Report-Only")}} следующим образом:</p>
diff --git a/files/ru/web/http/redirections/index.html b/files/ru/web/http/redirections/index.html
index 24d77f80f5..5acca04b43 100644
--- a/files/ru/web/http/redirections/index.html
+++ b/files/ru/web/http/redirections/index.html
@@ -147,7 +147,7 @@ translation_of: Web/HTTP/Redirections
<h3 id="Приоритетность">Приоритетность</h3>
-<p>При использовании трёх возможных способов URL перенаправления, некоторые методы могут быть вызваны одновременно, но какой из них будет применён первым? Порядок приоритетов следующий:</p>
+<p>При использовании трёх возможных способов URL перенаправления, некоторые методы могут быть вызваны одновременно, но какой из них будет примёнён первым? Порядок приоритетов следующий:</p>
<ol>
<li>HTTP перенаправления всегда выполняются первыми, пока ещё страница даже не была передана,  и конечно же, пока ещё не прочитана.</li>
@@ -168,7 +168,7 @@ translation_of: Web/HTTP/Redirections
<p>Связывание доменов может быть необходимым по нескольким причинам:</p>
<ul>
- <li>Расширение вашего сайта. Распространённый случай, когда ваш сайт находится под доменом <code>www.example.com</code> , а доступ к страницам должен быть возможным также из <code>example.com</code> . В этом случае создаются перенаправления для  страниц из <code>example.com</code> к страницам <code>www.example.com</code>. Вы также можете предоставлять обычно используемые имена синонимов или частые опечатки ваших доменных имен.</li>
+ <li>Расширение вашего сайта. Распространённый случай, когда ваш сайт находится под доменом <code>www.example.com</code> , а доступ к страницам должен быть возможным также из <code>example.com</code> . В этом случае создаются перенаправления для  страниц из <code>example.com</code> к страницам <code>www.example.com</code>. Вы также можете предоставлять обычно используемые имена синонимов или частые опечатки ваших доменных имён.</li>
<li>Переезд на другой домен. К примеру, ваша компания была переименована и вы хотите чтобы люди которые обычно использовали старый сайт компании находили вас под новым именем.</li>
<li>Принуждённый HTTPS. Запросы к HTTP версии вашего сайта буду перенаправлены к HTTPS версии.</li>
</ul>
diff --git a/files/ru/web/http/status/100/index.html b/files/ru/web/http/status/100/index.html
index d96b80e56e..bc26744c55 100644
--- a/files/ru/web/http/status/100/index.html
+++ b/files/ru/web/http/status/100/index.html
@@ -5,7 +5,7 @@ translation_of: Web/HTTP/Status/100
---
<div>{{HTTPSidebar}}</div>
-<p> Код ответа "HTTP <strong><code>100 Continue"</code></strong> на информационный статус указывает, что все до сих пор в порядке и что клиент должен продолжить запрос или игнорировать его, если он уже завершен.</p>
+<p> Код ответа "HTTP <strong><code>100 Continue"</code></strong> на информационный статус указывает, что все до сих пор в порядке и что клиент должен продолжить запрос или игнорировать его, если он уже завершён.</p>
<p>Чтобы сервер проверял заголовки запроса, клиент должен отправить {{HTTPHeader("Expect")}}<code>:100-continue</code> в качестве заголовка в своём первоначальном запросе и получить код состояния <code>100-continue </code>в ответ перед отправкой тела.</p>
diff --git a/files/ru/web/javascript/eventloop/index.html b/files/ru/web/javascript/eventloop/index.html
index 1d4023e2c5..6cd171eced 100644
--- a/files/ru/web/javascript/eventloop/index.html
+++ b/files/ru/web/javascript/eventloop/index.html
@@ -68,7 +68,7 @@ g(21);
<h3 id="Добавление_событий_в_очередь">Добавление событий в очередь</h3>
-<p>В браузерах события добавляются в очередь в любое время, если событие произошло, а так же если у него есть обработчик. В случае, если обработчика нет – событие потеряно. Так, клик по элементу, имеющему обработчик события по событию <code>click </code>, добавит событие в очередь, а если обработчика нет – то и событие в очередь не попадет.</p>
+<p>В браузерах события добавляются в очередь в любое время, если событие произошло, а так же если у него есть обработчик. В случае, если обработчика нет – событие потеряно. Так, клик по элементу, имеющему обработчик события по событию <code>click </code>, добавит событие в очередь, а если обработчика нет – то и событие в очередь не попадёт.</p>
<p>Вызов <a href="/ru/docs/Web/API/WindowTimers/setTimeout" title="/en-US/docs/window.setTimeout">setTimeout</a> добавит событие в очередь по прошествии времени, указанного во втором аргументе вызова. Если очередь событий на тот момент будет пуста, то событие обработается сразу же, в противном случае событию функции <code>setTimeout</code> придётся ожидать завершения обработки остальных событий в очереди. Именно поэтому второй аргумент <code>setTimeout</code> корректно считать не временем, через которое выполнится функция из первого аргумента, а минимальное время, через которое она сможет выполниться.</p>
diff --git a/files/ru/web/javascript/guide/details_of_the_object_model/index.html b/files/ru/web/javascript/guide/details_of_the_object_model/index.html
index a93d7aa85e..056146710e 100644
--- a/files/ru/web/javascript/guide/details_of_the_object_model/index.html
+++ b/files/ru/web/javascript/guide/details_of_the_object_model/index.html
@@ -30,7 +30,7 @@ translation_of: Web/JavaScript/Guide/Details_of_the_Object_Model
<p>В языках, основанных на классах, вы создаёте иерархию классов через объявление классов. В объявлении класса вы можете указать, что новый класс является <em>подклассом</em> уже существующего класса. При этом, подкласс унаследует все свойства суперкласса и в дополнение сможет добавить свои свойства или переопределить унаследованные. Например, предположим, что класс <code><span style="font-family: consolas,monaco,andale mono,monospace;">Employee</span></code> включает два свойства: <code>name</code> и <code>dept</code>, а класс <code><span style="font-family: consolas,monaco,andale mono,monospace;">Manager</span></code> является подклассом <code><span style="font-family: consolas,monaco,andale mono,monospace;">Employee</span></code> и добавляет свойство <code>reports</code>. В этом случае, экземпляр класса <code><span style="font-family: consolas,monaco,andale mono,monospace;">Manager</span></code> будет иметь три свойства: <code>name</code>, <code>dept</code>, и <code>reports</code>.</p>
-<p>JavaScript реализует наследование, позволяя связать прототипный ообъект с любой функцией-конструктором. Итак, вы можете создать ообъект точь-в-точь, как в примере <code><span style="font-family: consolas,monaco,andale mono,monospace;">Employee</span></code> — <code><span style="font-family: consolas,monaco,andale mono,monospace;">Manager</span></code>, но используя несколько иную технику. Для начала нужно определить функцию-конструктор <code><span style="font-family: consolas,monaco,andale mono,monospace;">Employee</span></code>, которая определяет свойства <code>name</code> и <code>dept</code>. Затем, определяем функцию-конструктор <code><span style="font-family: consolas,monaco,andale mono,monospace;">Manager</span></code>, в которой в свою очередь, будет явно вызываться конструктор <span style="font-family: consolas,monaco,andale mono,monospace;"><code>Employee</code> и</span> определяться новое свойство <code>reports</code>. Наконец, присваиваем новый экземпляр <code><span style="font-family: consolas,monaco,andale mono,monospace;">Employee</span></code>, в качестве <code>prototype</code> для функции-конструктора <code><span style="font-family: consolas,monaco,andale mono,monospace;">Manager</span></code>. Теперь, когда вы создадите нового <span style="font-family: consolas,monaco,andale mono,monospace;">Manager</span>, он унаследует свойства <font face="consolas, Liberation Mono, courier, monospace"><span style="background-color: rgba(220, 220, 220, 0.5);">name</span></font> и <font face="consolas, Liberation Mono, courier, monospace"><span style="background-color: rgba(220, 220, 220, 0.5);">dept</span></font> из объекта <code><span style="font-family: consolas,monaco,andale mono,monospace;">Employee</span></code>.</p>
+<p>JavaScript реализует наследование, позволяя связать прототипный объект с любой функцией-конструктором. Итак, вы можете создать объект точь-в-точь, как в примере <code><span style="font-family: consolas,monaco,andale mono,monospace;">Employee</span></code> — <code><span style="font-family: consolas,monaco,andale mono,monospace;">Manager</span></code>, но используя несколько иную технику. Для начала нужно определить функцию-конструктор <code><span style="font-family: consolas,monaco,andale mono,monospace;">Employee</span></code>, которая определяет свойства <code>name</code> и <code>dept</code>. Затем, определяем функцию-конструктор <code><span style="font-family: consolas,monaco,andale mono,monospace;">Manager</span></code>, в которой в свою очередь, будет явно вызываться конструктор <span style="font-family: consolas,monaco,andale mono,monospace;"><code>Employee</code> и</span> определяться новое свойство <code>reports</code>. Наконец, присваиваем новый экземпляр <code><span style="font-family: consolas,monaco,andale mono,monospace;">Employee</span></code>, в качестве <code>prototype</code> для функции-конструктора <code><span style="font-family: consolas,monaco,andale mono,monospace;">Manager</span></code>. Теперь, когда вы создадите нового <span style="font-family: consolas,monaco,andale mono,monospace;">Manager</span>, он унаследует свойства <font face="consolas, Liberation Mono, courier, monospace"><span style="background-color: rgba(220, 220, 220, 0.5);">name</span></font> и <font face="consolas, Liberation Mono, courier, monospace"><span style="background-color: rgba(220, 220, 220, 0.5);">dept</span></font> из объекта <code><span style="font-family: consolas,monaco,andale mono,monospace;">Employee</span></code>.</p>
<h3 id="Добавление_и_удаление_свойств">Добавление и удаление свойств</h3>
@@ -135,7 +135,7 @@ public class Employee {
</tbody>
</table>
-<p>Определения классов <code>Manager</code> и <code>WorkerBee</code> показывают разницу в определении вышестоящего объекта в цепочке наследования. В JavaScript вводится связующий ообъект (прототипный экземпляр), который присваивается в качестве значения свойству <code>prototype </code>функции-конструктора. Вы можете сделать это в любое время после того, как вы создали конструктор. В Java, необходимо указать суперкласс внутри определения класса. Вы не можете изменить суперкласс вне определения класса.</p>
+<p>Определения классов <code>Manager</code> и <code>WorkerBee</code> показывают разницу в определении вышестоящего объекта в цепочке наследования. В JavaScript вводится связующий объект (прототипный экземпляр), который присваивается в качестве значения свойству <code>prototype </code>функции-конструктора. Вы можете сделать это в любое время после того, как вы создали конструктор. В Java, необходимо указать суперкласс внутри определения класса. Вы не можете изменить суперкласс вне определения класса.</p>
<table class="standard-table">
<thead>
@@ -153,7 +153,7 @@ function Manager() {
this.reports = [];
}
//создаём пустой объект с прототипом от конструктора Employee
-//и используем этот ообъект как прототип для Manager
+//и используем этот объект как прототип для Manager
Manager.prototype = Object.create(Employee.prototype);
Manager.prototype.constructor = Manager;
@@ -181,7 +181,7 @@ public class WorkerBee extends Employee {
</tbody>
</table>
-<p>Классы <code>Engineer</code> и <code>SalesPerson</code> создают объекты, которые происходят от <code>WorkerBee</code> и, следовательно, от <code>Employee</code>. Ообъект этих типов имеет свойства всех объектов, расположенных над ним в иерархии. Также, эти классы переопределяют наследуемое значение свойства <code>dept</code> своими значениями, характерными для этих объектов.</p>
+<p>Классы <code>Engineer</code> и <code>SalesPerson</code> создают объекты, которые происходят от <code>WorkerBee</code> и, следовательно, от <code>Employee</code>. Объект этих типов имеет свойства всех объектов, расположенных над ним в иерархии. Также, эти классы переопределяют наследуемое значение свойства <code>dept</code> своими значениями, характерными для этих объектов.</p>
<table class="standard-table">
<thead>
@@ -247,14 +247,14 @@ public class Engineer extends WorkerBee {
<h3 id="Наследование_свойств">Наследование свойств</h3>
-<p>Предположим, вы создаёте ообъект <code>mark</code> в качестве <code>WorkerBee</code> (как показано на <a href="#8.3">Рисунок 8.3</a>) с помощью следующего выражения:</p>
+<p>Предположим, вы создаёте объект <code>mark</code> в качестве <code>WorkerBee</code> (как показано на <a href="#8.3">Рисунок 8.3</a>) с помощью следующего выражения:</p>
<pre class="brush: js">var mark = new WorkerBee;
</pre>
-<p>Когда JavaScript видит оператор <code>new</code>, он создаёт новый обобщённый ообъект и неявно устанавливает значение внутреннего свойства [[Prototype]] в <code>WorkerkBee.prototype</code>, затем передаёт этот новый ообъект в качестве значения <code>this</code> в функцию-конструктор <code>WorkerBee</code>. Внутреннее свойство [[Prototype]] определяет цепочку прототипов, используемых для получения значений свойств. После того, как эти свойства установлены, JavaScript возвращает новый ообъект, а оператор присваивания устанавливает переменную <code>mark</code> для этого объекта.</p>
+<p>Когда JavaScript видит оператор <code>new</code>, он создаёт новый обобщённый объект и неявно устанавливает значение внутреннего свойства [[Prototype]] в <code>WorkerkBee.prototype</code>, затем передаёт этот новый объект в качестве значения <code>this</code> в функцию-конструктор <code>WorkerBee</code>. Внутреннее свойство [[Prototype]] определяет цепочку прототипов, используемых для получения значений свойств. После того, как эти свойства установлены, JavaScript возвращает новый объект, а оператор присваивания устанавливает переменную <code>mark</code> для этого объекта.</p>
-<p>Этот процесс не задаёт значения свойств (<em>локальных</em> значений), которые унаследованы по цепочке прототипов, объекта <code>mark</code> напрямую. Когда вы запрашиваете значение свойства, JavaScript сначала проверяет, существует ли это значение в данном объекте. Если так и есть, тогда возвращается это значение. Если значение не найдено в самом объекте, JavaScript проверяет цепочку прототипов (используя внутреннее свойство [[Prorotype]]). Если ообъект в цепочке прототипов имеет значение для искомого свойства, это значение возвращается. Если такое свойство не найдено, JavaScript сообщает, что ообъект не обладает свойством. Таким образом, ообъект <code>mark</code> содержит следующие свойства и значения:</p>
+<p>Этот процесс не задаёт значения свойств (<em>локальных</em> значений), которые унаследованы по цепочке прототипов, объекта <code>mark</code> напрямую. Когда вы запрашиваете значение свойства, JavaScript сначала проверяет, существует ли это значение в данном объекте. Если так и есть, тогда возвращается это значение. Если значение не найдено в самом объекте, JavaScript проверяет цепочку прототипов (используя внутреннее свойство [[Prorotype]]). Если объект в цепочке прототипов имеет значение для искомого свойства, это значение возвращается. Если такое свойство не найдено, JavaScript сообщает, что объект не обладает свойством. Таким образом, объект <code>mark</code> содержит следующие свойства и значения:</p>
<pre class="brush: js">mark.name = '';
mark.dept = 'general';
@@ -276,14 +276,14 @@ mark.projects = ['navigator'];</pre>
<pre class="brush: js">mark.bonus = 3000;
</pre>
-<p>Теперь ообъект <code>mark</code> имеет свойство <code>bonus</code>, но никакой другой <code>WorkerBee</code> не имеет этого свойства.</p>
+<p>Теперь объект <code>mark</code> имеет свойство <code>bonus</code>, но никакой другой <code>WorkerBee</code> не имеет этого свойства.</p>
-<p>Если вы добавляете новое свойство в ообъект, который используется в качестве прототипа для функции-конструктора, вы добавляете это свойство для всех объектов, наследующих свойства из этого прототипа. Например, вы можете добавить свойство <code>specialty</code> для всех сотрудников с помощью следующего выражения:</p>
+<p>Если вы добавляете новое свойство в объект, который используется в качестве прототипа для функции-конструктора, вы добавляете это свойство для всех объектов, наследующих свойства из этого прототипа. Например, вы можете добавить свойство <code>specialty</code> для всех сотрудников с помощью следующего выражения:</p>
<pre class="brush: js">Employee.prototype.specialty = 'none';
</pre>
-<p>Как только JavaScript выполняет это выражение, ообъект <code>mark</code> также получает свойство <code>specialty</code> со значением <code>"none"</code>. Следующий рисунок показывает результат добавления этого свойства в прототип <code>Employee</code> и последующее переопределение его в прототипе <code>Engineer</code>.</p>
+<p>Как только JavaScript выполняет это выражение, объект <code>mark</code> также получает свойство <code>specialty</code> со значением <code>"none"</code>. Следующий рисунок показывает результат добавления этого свойства в прототип <code>Employee</code> и последующее переопределение его в прототипе <code>Engineer</code>.</p>
<p><img alt="" class="internal" src="/@api/deki/files/4422/=figure8.4.png" style="height: 519px; width: 833px;"><br>
<small><strong>Рисунок 8.4: Добавление свойств</strong></small></p>
@@ -412,7 +412,7 @@ jane.machine == 'belau'
<p>Обратите внимание, что с таким способом вы не можете указать начальное значение наследуемого свойства, такого как <code>name</code>. Если вы хотите задать начальное значение для наследуемых свойств в JavaScript, вам нужно добавить больше кода в функцию-конструктор.</p>
-<p>До сих пор функция-конструктор создавала обобщённый ообъект, а затем определяла локальные свойства и значения для нового объекта. Вы можете использовать конструктор, который добавляет дополнительные свойства путём непосредственного вызова функции-конструктора для объекта, расположенного выше в цепочке прототипов. На следующем рисунке показаны эти новые определения.</p>
+<p>До сих пор функция-конструктор создавала обобщённый объект, а затем определяла локальные свойства и значения для нового объекта. Вы можете использовать конструктор, который добавляет дополнительные свойства путём непосредственного вызова функции-конструктора для объекта, расположенного выше в цепочке прототипов. На следующем рисунке показаны эти новые определения.</p>
<p><img alt="" class="internal" src="/@api/deki/files/4430/=figure8.6.png" style="height: 534px; width: 1063px;"><br>
<small><strong>Рисунок 8.6: Определение свойств в конструкторе, вариант 2</strong></small></p>
@@ -426,7 +426,7 @@ jane.machine == 'belau'
}
</pre>
-<p>Предположим, вы создаёте новый ообъект, используя <code>Engineer, следующим образом:</code></p>
+<p>Предположим, вы создаёте новый объект, используя <code>Engineer, следующим образом:</code></p>
<pre class="brush: js">var jane = new Engineer('Doe, Jane', ['navigator', 'javascript'], 'belau');
</pre>
@@ -434,16 +434,16 @@ jane.machine == 'belau'
<p>JavaScript <span id="result_box" lang="ru"><span>выполняет следующие действия</span><span>:</span></span></p>
<ol>
- <li>Оператор <code>new</code> создаёт обобщённый ообъект и устанавливает его свойству <code>__proto__</code> значение <code>Engineer.prototype</code>.</li>
- <li>Оператор <code>new</code> передаёт этот новый ообъект в конструктор <code>Engineer</code> в качестве значения ключевого слова <code>this</code>.</li>
+ <li>Оператор <code>new</code> создаёт обобщённый объект и устанавливает его свойству <code>__proto__</code> значение <code>Engineer.prototype</code>.</li>
+ <li>Оператор <code>new</code> передаёт этот новый объект в конструктор <code>Engineer</code> в качестве значения ключевого слова <code>this</code>.</li>
<li>Конструктор создаёт новое свойство с именем <code>base</code> для этого объекта и присваивает значение свойства <code>base</code> из конструктора <code>WorkerBee</code>. Это делает конструктор <code>WorkerBee</code> методом объекта, созданного <code>Engineer</code>. Имя свойства <code>base</code> не является специальным словом. Вы можете использовать любое допустимое для свойства имя; <code>base</code> всего-лишь напоминает о предназначении свойства.</li>
<li>Конструктор вызывает метод <code>base</code>, передавая в качестве аргументов два аргумента, переданных конструктору (<code>"Doe, Jane"</code> и <code>["navigator", "javascript"]</code>), а также строку <code>"engineering"</code>. Явное использование <code>"engineering"</code> в конструкторе указывает на то, что все объекты, созданные <code>Engineer</code>, имеют одинаковое значение для наследуемого свойства <code>dept</code>, это значение переопределяет значение, унаследованное из <code>Employee</code>.</li>
<li>Поскольку <code>base</code> является методом <code>Engineer</code>, внутри вызова <code>base</code> JavaScript привязывает ключевое свойство <code>this</code> к объекту, созданному в шаге 1. Таким образом, функция <code>WorkerBee</code> передаёт поочерёдно аргументы <code>"Doe, Jane"</code> и <code>"engineering"</code> в функцию-конструктор <code>Employee</code>. Получив результат из <code>Employee</code>, функция <code>WorkerBee</code> использует оставшийся аргумент для установки значения свойства <code>projects</code>.</li>
<li>После возвращения из метода <code>base</code>, конструктор <code>Engineer</code> инициализирует свойство объекта <code>machine</code> со значением <code>"belau"</code>.</li>
- <li>После возвращения из конструктора, JavaScript присваивает новый ообъект переменной <code>jane</code>.</li>
+ <li>После возвращения из конструктора, JavaScript присваивает новый объект переменной <code>jane</code>.</li>
</ol>
-<p>Можно подумать, что вызвав <code>WorkerBee</code> из конструктора <code>Engineer</code>, вы настроили соответствующим образом наследование для объектов, создаваемых <code>Engineer</code>. Это не так. Вызов конструктора <code>WorkerBee</code> обеспечивает только то, что ообъект <code>Engineer</code> запускается со  свойствами, определёнными во всех функциях-конструкторах, которые были вызваны. Так, если позже добавить свойства в прототипы <code>Employee</code> или <code>WorkerBee</code>, эти свойства не наследуются объектами из <code>Engineer</code>. Например, предположим, вы использовали следующие определения:</p>
+<p>Можно подумать, что вызвав <code>WorkerBee</code> из конструктора <code>Engineer</code>, вы настроили соответствующим образом наследование для объектов, создаваемых <code>Engineer</code>. Это не так. Вызов конструктора <code>WorkerBee</code> обеспечивает только то, что объект <code>Engineer</code> запускается со  свойствами, определёнными во всех функциях-конструкторах, которые были вызваны. Так, если позже добавить свойства в прототипы <code>Employee</code> или <code>WorkerBee</code>, эти свойства не наследуются объектами из <code>Engineer</code>. Например, предположим, вы использовали следующие определения:</p>
<pre class="brush: js">function Engineer (name, projs, mach) {
this.base = WorkerBee;
@@ -508,7 +508,7 @@ function Engineer (name, projs, mach) {
<li>Проверяется, существует ли локальное свойство с запрашиваемым именем. Если да, то возвращается значение этого свойства.</li>
<li>Если локального свойства не существует, проверяется цепочка прототипов (через использование свойства <code>__proto__</code>).</li>
<li>Если один из объектов в цепочке прототипов имеет свойство c запрашиваемым именем, возвращается значение этого свойства.</li>
- <li>Если искомое свойство не обнаружено, считается, что ообъект его не имеет.</li>
+ <li>Если искомое свойство не обнаружено, считается, что объект его не имеет.</li>
</ol>
<p>Результат выполнения этих шагов будет зависеть от того, в каком порядке вы создаёте объекты, прототипы и их свойства. Рассмотрим пример:</p>
@@ -524,12 +524,12 @@ function WorkerBee () {
WorkerBee.prototype = new Employee;
</pre>
-<p>Предположим, на основе конструкции выше, вы создаёте ообъект <code>amy</code> как экземпляр класса <code>WorkerBee</code> следующим выражением:</p>
+<p>Предположим, на основе конструкции выше, вы создаёте объект <code>amy</code> как экземпляр класса <code>WorkerBee</code> следующим выражением:</p>
<pre class="brush: js">var amy = new WorkerBee;
</pre>
-<p><code><font face="Open Sans, Arial, sans-serif">В результате, ообъект </font>amy</code> будет иметь одно локальное свойство - <code>projects</code>. Свойства <code>name</code> и <code>dept</code> не будут локальными для <code>amy</code> но будут взяты из прототипа (ообъект на который ссылается свойство <code>__proto__</code> объекта <code>amy)</code>. Таким образом, <code>amy</code> имеет три свойства:</p>
+<p><code><font face="Open Sans, Arial, sans-serif">В результате, объект </font>amy</code> будет иметь одно локальное свойство - <code>projects</code>. Свойства <code>name</code> и <code>dept</code> не будут локальными для <code>amy</code> но будут взяты из прототипа (объект на который ссылается свойство <code>__proto__</code> объекта <code>amy)</code>. Таким образом, <code>amy</code> имеет три свойства:</p>
<pre class="brush: js">amy.name == "";
amy.dept == "general";
@@ -543,7 +543,7 @@ amy.projects == [];
<p>На первый взгляд вы можете ожидать, что это изменение распространится на все экземпляры <code>Employee</code>. Однако этого не случится.</p>
-<p>Когда вы устанавливаете прототип для <code>WorkerBee</code> вы создаёте новый ообъект <code>Employee</code>, таким образом <code>WorkerBee.prototype</code> получает своё собственное локальное свойство <code>name</code> (в данном примере пустую строку). Следовательно, когда JavaScript ищет свойство <code>name</code> у объекта <code>amy</code> (экземпляра <code>WorkerBee</code>), он первым делом натыкается на него в прототипе <code>WorkerBee.prototype,</code> и до проверки <code>Employee.prototype</code> дело не доходит.</p>
+<p>Когда вы устанавливаете прототип для <code>WorkerBee</code> вы создаёте новый объект <code>Employee</code>, таким образом <code>WorkerBee.prototype</code> получает своё собственное локальное свойство <code>name</code> (в данном примере пустую строку). Следовательно, когда JavaScript ищет свойство <code>name</code> у объекта <code>amy</code> (экземпляра <code>WorkerBee</code>), он первым делом натыкается на него в прототипе <code>WorkerBee.prototype,</code> и до проверки <code>Employee.prototype</code> дело не доходит.</p>
<p>Если у вас есть необходимость изменять некоторое свойство объекта во время работы приложения, и применять это изменение на все существующие экземпляры, не нужно создавать это свойство внутри конструктора. Вместо этого добавьте свойство в прототип, принадлежащий конструктору. Для примера, предположим, вы изменили код, который был показан выше, следующим образом:</p>
@@ -568,11 +568,11 @@ Employee.prototype.name = "Unknown";
<h3 id="Разбираемся_во_взаимосвязи_экземпляров">Разбираемся во взаимосвязи экземпляров</h3>
-<p>Поиск свойств в JavaScript начинается с просмотра самого объекта, и если в нем свойство не найдено, поиск переключается на ообъект, на который указывает ссылка <code>__proto__</code>. Это продолжается рекурсивно и такой процесс поиска называется "поиск в цепочке прототипов".</p>
+<p>Поиск свойств в JavaScript начинается с просмотра самого объекта, и если в нем свойство не найдено, поиск переключается на объект, на который указывает ссылка <code>__proto__</code>. Это продолжается рекурсивно и такой процесс поиска называется "поиск в цепочке прототипов".</p>
-<p>Специальное свойство <code>__proto__</code> устанавливается автоматически при создании объекта. Оно принимает значение свойства <code>prototype</code> функции-конструктора. Таким образом, <code>new Foo()</code> создаст ообъект для которого справедливо выражение <code>__proto__ == <code class="moz-txt-verticalline">Foo.prototype</code></code>. Вследствие этого, любые изменения свойств у <code class="moz-txt-verticalline">Foo.prototype,</code> оказывают эффект на процесс поиска свойств во всех объектах, созданных при помощи <code>new Foo()</code>.</p>
+<p>Специальное свойство <code>__proto__</code> устанавливается автоматически при создании объекта. Оно принимает значение свойства <code>prototype</code> функции-конструктора. Таким образом, <code>new Foo()</code> создаст объект для которого справедливо выражение <code>__proto__ == <code class="moz-txt-verticalline">Foo.prototype</code></code>. Вследствие этого, любые изменения свойств у <code class="moz-txt-verticalline">Foo.prototype,</code> оказывают эффект на процесс поиска свойств во всех объектах, созданных при помощи <code>new Foo()</code>.</p>
-<p>Все объекты (за исключением глобального объекта <code>Object</code>) имеют свойство <code>__proto__.</code> Все функции имеют свойство <code>prototype</code>. Благодаря этому, могут быть установлены родственные связи в иерархии объектов. Вы можете установить родство и происхождение объекта, сравнив его свойство <code>__proto__</code> со свойством <code>prototype</code> конструктора. Здесь JavaScript представляет оператор <code>instanceof</code> как более простой способ проверки, наследуется ли ообъект от конкретного конструктора. Для примера:</p>
+<p>Все объекты (за исключением глобального объекта <code>Object</code>) имеют свойство <code>__proto__.</code> Все функции имеют свойство <code>prototype</code>. Благодаря этому, могут быть установлены родственные связи в иерархии объектов. Вы можете установить родство и происхождение объекта, сравнив его свойство <code>__proto__</code> со свойством <code>prototype</code> конструктора. Здесь JavaScript представляет оператор <code>instanceof</code> как более простой способ проверки, наследуется ли объект от конкретного конструктора. Для примера:</p>
<pre class="brush: js">var f = new Foo();
var isTrue = (f instanceof Foo);</pre>
@@ -682,9 +682,9 @@ var mac = new Engineer("Wood, Mac");
<h3 id="Никакого_множественного_наследования">Никакого множественного наследования</h3>
-<p>Некоторые из объектно-ориентированных языков предоставляют возможность множественного наследования. Когда один ообъект может унаследовать свойства и методы множества других, не связанных друг с другом объектов. В JavaScript такого не предусмотрено.</p>
+<p>Некоторые из объектно-ориентированных языков предоставляют возможность множественного наследования. Когда один объект может унаследовать свойства и методы множества других, не связанных друг с другом объектов. В JavaScript такого не предусмотрено.</p>
-<p>В JavaScript наследование свойств осуществляется путём поиска в цепочке прототипов. Так как ообъект может иметь лишь единственный присвоенный ему прототип, JavaScript не может осуществить наследование более чем от одной цепочки прототипов.</p>
+<p>В JavaScript наследование свойств осуществляется путём поиска в цепочке прототипов. Так как объект может иметь лишь единственный присвоенный ему прототип, JavaScript не может осуществить наследование более чем от одной цепочки прототипов.</p>
<p>Однако конструктор в JavaScript может вызывать любое количество вложенных конструкторов. Это даёт некоторую, хоть и ограниченную (отсутствием прототипной связанности) видимость множественного наследования. Рассмотрим следующий фрагмент:</p>
@@ -718,6 +718,6 @@ dennis.hobby == "scuba"
<pre class="brush: js">Hobbyist.prototype.equipment = ["mask", "fins", "regulator", "bcd"]
</pre>
-<p>Ообъект <code>dennis</code> этого свойства не унаследует.</p>
+<p>Объект <code>dennis</code> этого свойства не унаследует.</p>
<div>{{PreviousNext("Web/JavaScript/Guide/Working_with_Objects", "Web/JavaScript/Guide/Iterators_and_Generators")}}</div>
diff --git a/files/ru/web/javascript/guide/grammar_and_types/index.html b/files/ru/web/javascript/guide/grammar_and_types/index.html
index 3807d40ef0..c8b06a30ed 100644
--- a/files/ru/web/javascript/guide/grammar_and_types/index.html
+++ b/files/ru/web/javascript/guide/grammar_and_types/index.html
@@ -209,7 +209,7 @@ var baz = function() {
<h3 id="Константы"><a id="Constants" name="Constants">Константы</a></h3>
-<p>Вы можете создать именованную константу, доступную только для чтения, используя ключевое слово {{jsxref("Statements/const", "const")}}. Синтаксис идентификатора константы является таким же, как и у идентификатора переменной: он должен начинаться с буквы, нижнего подчёркивания или знака $ и может содержать буквы, цифры или нижнее подчеркивание.</p>
+<p>Вы можете создать именованную константу, доступную только для чтения, используя ключевое слово {{jsxref("Statements/const", "const")}}. Синтаксис идентификатора константы является таким же, как и у идентификатора переменной: он должен начинаться с буквы, нижнего подчёркивания или знака $ и может содержать буквы, цифры или нижнее подчёркивание.</p>
<pre class="brush: js language-js" style="padding: 1em 0px 1em 30px; font-size: 14px; white-space: normal;"><code class="language-js" style="direction: ltr; white-space: pre;"><span class="keyword token" style="color: #0077aa;">const</span> PREFIX <span class="operator token" style="background: rgba(255, 255, 255, 0.498039); color: #a67f59;">=</span> <span class="string token" style="color: #669900;">'212'</span><span class="punctuation token" style="color: #999999;">;</span></code></pre>
diff --git a/files/ru/web/javascript/guide/numbers_and_dates/index.html b/files/ru/web/javascript/guide/numbers_and_dates/index.html
index 038b00c440..8b0ac2f5df 100644
--- a/files/ru/web/javascript/guide/numbers_and_dates/index.html
+++ b/files/ru/web/javascript/guide/numbers_and_dates/index.html
@@ -371,7 +371,7 @@ IPOdate.setTime(Date.parse("Aug 9, 1995"));
<p>Следующие четыре выражения строят текстовую строку на основе time. Первое из них создаёт переменную <code>temp</code>, присваивая ей значение при помощи условия; Если <code>hour</code> больше чем 12, то (<code>hour - 12</code>), иначе просто <code>hour.</code> В случае же, когда <code>hour</code> равно 0, берётся фиксированное значение "12".</p>
-<p>Следующее выражение приращивает минуты к переменной <code>temp</code>. Если количество минут меньше 10, то условное выражение добавляет строку с двоеточием и заполняющим нулём, иначе, просто строку с двоеточием. Секунды приращиваются к переменной <code>temp</code> тем же путем.</p>
+<p>Следующее выражение приращивает минуты к переменной <code>temp</code>. Если количество минут меньше 10, то условное выражение добавляет строку с двоеточием и заполняющим нулём, иначе, просто строку с двоеточием. Секунды приращиваются к переменной <code>temp</code> тем же путём.</p>
<p>В завершение всего, последнее условное выражение добавляет строку "P.M." к переменной <code>temp</code> если <code>hour</code> равно или больше 12, иначе, добавляется строка "A.M.".</p>
diff --git a/files/ru/web/javascript/guide/working_with_objects/index.html b/files/ru/web/javascript/guide/working_with_objects/index.html
index ee94429f46..8bee89f443 100644
--- a/files/ru/web/javascript/guide/working_with_objects/index.html
+++ b/files/ru/web/javascript/guide/working_with_objects/index.html
@@ -415,7 +415,7 @@ console.log(now);
<li>добавлены существующему объекту в любой момент, при использовании методов добавления геттеров и сеттеров.</li>
</ul>
-<p>Когда определение геттера и сеттера использует {{ web.link("#Использование_инициализаторов_объекта", "инициализаторы объекта") }}, все что вам нужно, это дополнить геттер префиксом <code>get</code> а сеттер префиксом <code>set</code>. При этом, метод геттера не должен ожидать каких либо параметров, в то время как метод сеттера принимает один единственный параметр (новое значение для присвоения свойству). Например:</p>
+<p>Когда определение геттера и сеттера использует {{ web.link("#Использование_инициализаторов_объекта", "инициализаторы объекта") }}, всё что вам нужно, это дополнить геттер префиксом <code>get</code> а сеттер префиксом <code>set</code>. При этом, метод геттера не должен ожидать каких либо параметров, в то время как метод сеттера принимает один единственный параметр (новое значение для присвоения свойству). Например:</p>
<pre class="brush: js"><code>var o = {
a: 7,
diff --git a/files/ru/web/javascript/reference/errors/not_defined/index.html b/files/ru/web/javascript/reference/errors/not_defined/index.html
index 2169f9ffa3..6a14279685 100644
--- a/files/ru/web/javascript/reference/errors/not_defined/index.html
+++ b/files/ru/web/javascript/reference/errors/not_defined/index.html
@@ -19,7 +19,7 @@ translation_of: Web/JavaScript/Reference/Errors/Not_defined
<p>Есть несуществующая переменная, которая ссылается куда-то. Эта переменная должна быть объявлена, или вам необходимо убедиться, что она доступна в вашем текущем скрипте или области исходного кода ( {{Glossary("scope")}}).</p>
<div class="note">
-<p><strong>Заметка: </strong>При использовании сторонних библиотек (такие как jQuery), убедитесь, что они загружаются до того, как вы используете переменные "$". Поместите тег {{HTMLElement("script")}} загружающий вашу библиотеку до того как вы будете использовать ее.</p>
+<p><strong>Заметка: </strong>При использовании сторонних библиотек (такие как jQuery), убедитесь, что они загружаются до того, как вы используете переменные "$". Поместите тег {{HTMLElement("script")}} загружающий вашу библиотеку до того как вы будете использовать её.</p>
</div>
<h2 id="Примеры"><font><font>Примеры</font></font></h2>
diff --git a/files/ru/web/javascript/reference/errors/unnamed_function_statement/index.html b/files/ru/web/javascript/reference/errors/unnamed_function_statement/index.html
index c4f442f49e..c0c37bcd00 100644
--- a/files/ru/web/javascript/reference/errors/unnamed_function_statement/index.html
+++ b/files/ru/web/javascript/reference/errors/unnamed_function_statement/index.html
@@ -46,7 +46,7 @@ SyntaxError: непредвиденный токен ( [Chrome]
<h3 id="Помеченные_функции">Помеченные функции</h3>
-<p>При использовании меток функций после ключевого слова function все равно потребуется указать имя функции. Это не работает:</p>
+<p>При использовании меток функций после ключевого слова function всё равно потребуется указать имя функции. Это не работает:</p>
<pre class="brush: js example-bad">function Greeter() {
german: function () {
diff --git a/files/ru/web/javascript/reference/global_objects/promise/all/index.html b/files/ru/web/javascript/reference/global_objects/promise/all/index.html
index 4a79cf71ab..44ef0a5cf7 100644
--- a/files/ru/web/javascript/reference/global_objects/promise/all/index.html
+++ b/files/ru/web/javascript/reference/global_objects/promise/all/index.html
@@ -57,7 +57,7 @@ Promise.all([p1, p2, p3]).then(values =&gt; {
<h3 id="Promise.all_поведение_немедленного_отклонения"><code>Promise.all</code> поведение немедленного отклонения</h3>
-<p><strong><code>Promise.all</code></strong> будет немедленно отклонён если одно из переданных обещаний будет отклонено: если у вас есть четыре обещания которые будут выполнены с задержкой и одно, которое будет отклонено немедленно - тогда <strong><code>Promise.all</code></strong> будет немедленно отклонен.</p>
+<p><strong><code>Promise.all</code></strong> будет немедленно отклонён если одно из переданных обещаний будет отклонено: если у вас есть четыре обещания которые будут выполнены с задержкой и одно, которое будет отклонено немедленно - тогда <strong><code>Promise.all</code></strong> будет немедленно отклонён.</p>
<pre><code>var p1 = new Promise((resolve, reject) =&gt; {
setTimeout(resolve, 1000, "one");
diff --git a/files/ru/web/javascript/reference/global_objects/promise/index.html b/files/ru/web/javascript/reference/global_objects/promise/index.html
index 7410136177..711ced45c2 100644
--- a/files/ru/web/javascript/reference/global_objects/promise/index.html
+++ b/files/ru/web/javascript/reference/global_objects/promise/index.html
@@ -40,12 +40,12 @@ new Promise(function(resolve, reject) { ... });</pre>
<p><code>Promise</code> может находиться в трёх состояниях:</p>
<ul>
- <li><em>ожидание (pending)</em>: начальное состояние, не исполнен и не отклонен.</li>
+ <li><em>ожидание (pending)</em>: начальное состояние, не исполнен и не отклонён.</li>
<li><em>исполнено (fulfilled)</em>: операция завершена успешно.</li>
<li><em>отклонено (rejected)</em>: операция завершена с ошибкой.</li>
</ul>
-<p>При создании промис находится в <em>ожидании (pending)</em>, а затем может стать <em>исполненным </em> (<em>fulfilled)</em>, вернув полученный результат (значение), или <em>отклонённым </em>(<em>rejected),</em> вернув причину отказа. В любом из этих случаев вызывается обработчик, прикреплённый к промису методом <code>then</code>. (Если в момент назначения обработчика промис уже исполнен или отклонён, обработчик все равно будет вызван, т.е. асинхронное исполнение промиса и назначение обработчика не будет происходить в «состоянии гонки», как, например, в случае с событиями в DOM.)</p>
+<p>При создании промис находится в <em>ожидании (pending)</em>, а затем может стать <em>исполненным </em> (<em>fulfilled)</em>, вернув полученный результат (значение), или <em>отклонённым </em>(<em>rejected),</em> вернув причину отказа. В любом из этих случаев вызывается обработчик, прикреплённый к промису методом <code>then</code>. (Если в момент назначения обработчика промис уже исполнен или отклонён, обработчик всё равно будет вызван, т.е. асинхронное исполнение промиса и назначение обработчика не будет происходить в «состоянии гонки», как, например, в случае с событиями в DOM.)</p>
<p>Так как методы <code>{{JSxRef("Promise.then", "Promise.prototype.then()")}}</code> и <code>{{JSxRef("Promise.catch", "Promise.prototype.catch()")}}</code> сами возвращают промис, их можно вызывать цепочкой, создавая <em>соединения.</em></p>
@@ -69,7 +69,7 @@ new Promise(function(resolve, reject) { ... });</pre>
<dl>
<dt>{{jsxref("Promise.all", "Promise.all(iterable)")}}</dt>
<dd>Ожидает исполнения всех промисов или отклонения любого из них.</dd>
- <dd>Возвращает промис, который исполнится после исполнения всех промисов в <code>iterable</code>. В случае, если любой из промисов будет отклонён, <code>Promise.all</code> будет также отклонен.</dd>
+ <dd>Возвращает промис, который исполнится после исполнения всех промисов в <code>iterable</code>. В случае, если любой из промисов будет отклонён, <code>Promise.all</code> будет также отклонён.</dd>
<dt>{{JSxRef("Promise.allSettled", "Promise.allSettled(iterable)")}}</dt>
<dd>Ожидает завершения всех полученных промисов (как исполнения так и отклонения).</dd>
<dd>Возвращает промис, который исполняется когда все полученные промисы завершены (исполнены или отклонены), содержащий массив результатов исполнения полученных промисов.</dd>
diff --git a/files/ru/web/javascript/reference/global_objects/promise/reject/index.html b/files/ru/web/javascript/reference/global_objects/promise/reject/index.html
index ebaed59a5f..e63f238f7a 100644
--- a/files/ru/web/javascript/reference/global_objects/promise/reject/index.html
+++ b/files/ru/web/javascript/reference/global_objects/promise/reject/index.html
@@ -15,7 +15,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise/reject
<dl>
<dt>reason</dt>
- <dd>Причина по которой <code>Promise</code> был отклонен.</dd>
+ <dd>Причина по которой <code>Promise</code> был отклонён.</dd>
<dt>
<h3 id="Возвращаемое_значение">Возвращаемое значение</h3>
diff --git a/files/ru/web/javascript/reference/global_objects/sharedarraybuffer/index.html b/files/ru/web/javascript/reference/global_objects/sharedarraybuffer/index.html
index ecd0cb98a9..64a726aa64 100644
--- a/files/ru/web/javascript/reference/global_objects/sharedarraybuffer/index.html
+++ b/files/ru/web/javascript/reference/global_objects/sharedarraybuffer/index.html
@@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer
---
<div>{{JSRef}}</div>
-<p>Объект <strong><code>SharedArrayBuffer</code></strong> используется для создания разделённого буфера фиксированной длины для хранения примитивных бинарных данных, подобно объекту {{jsxref("ArrayBuffer")}}, но могут быть использованы для создания обзора на разделённую память. В отличие от <code>ArrayBuffer</code>, <code>SharedArrayBuffer</code> не может быть отсоединен.</p>
+<p>Объект <strong><code>SharedArrayBuffer</code></strong> используется для создания разделённого буфера фиксированной длины для хранения примитивных бинарных данных, подобно объекту {{jsxref("ArrayBuffer")}}, но могут быть использованы для создания обзора на разделённую память. В отличие от <code>ArrayBuffer</code>, <code>SharedArrayBuffer</code> не может быть отсоединён.</p>
<h2 id="Синтаксис">Синтаксис</h2>
diff --git a/files/ru/web/javascript/reference/lexical_grammar/index.html b/files/ru/web/javascript/reference/lexical_grammar/index.html
index 9c74d62e61..78c9671af0 100644
--- a/files/ru/web/javascript/reference/lexical_grammar/index.html
+++ b/files/ru/web/javascript/reference/lexical_grammar/index.html
@@ -212,7 +212,7 @@ comment();</pre>
<p>Третий специализированный синтаксис комментариев, <strong>шебанг комментарий</strong>, в процессе стандартизации в ECMAScript (смотреть <a href="https://github.com/tc39/proposal-hashbang">Hashbang Grammar proposal</a>).</p>
-<p>Шебанг комментарий ведёт себя точно также как и однострочный (<code>//</code>) комментарий. Вместо этого, он начинается с <code>#!</code> и <strong>действителен только в самом начале скрипта или модуля</strong>. Обратите внимание, что никакие пробелы не разрешены перед <code>#!</code>. Комментарий состоит из всех символов после <code>#!</code> до конца первой строки; только такой комментарий разрешен.</p>
+<p>Шебанг комментарий ведёт себя точно также как и однострочный (<code>//</code>) комментарий. Вместо этого, он начинается с <code>#!</code> и <strong>действителен только в самом начале скрипта или модуля</strong>. Обратите внимание, что никакие пробелы не разрешены перед <code>#!</code>. Комментарий состоит из всех символов после <code>#!</code> до конца первой строки; только такой комментарий разрешён.</p>
<p>Шебанг комментарий определяет путь к  JavaScript интерпретатору, скрипт которого Вы хотите выполнить. Пример, как это работает:</p>
diff --git a/files/ru/web/javascript/reference/operators/delete/index.html b/files/ru/web/javascript/reference/operators/delete/index.html
index d7722fa829..4d8ffdccf6 100644
--- a/files/ru/web/javascript/reference/operators/delete/index.html
+++ b/files/ru/web/javascript/reference/operators/delete/index.html
@@ -50,7 +50,7 @@ delete <em>property</em> // удаляет свойства глобальног
<dt><code>property</code></dt>
<dd>Удаляемое свойство.</dd>
<dt><code>index</code></dt>
- <dd>Целое число, представляющее собой индекс массива, который должен быть удален.</dd>
+ <dd>Целое число, представляющее собой индекс массива, который должен быть удалён.</dd>
</dl>
<h3 id="Returns" name="Returns">Возвращаемое значение</h3>
diff --git a/files/ru/web/javascript/reference/operators/typeof/index.html b/files/ru/web/javascript/reference/operators/typeof/index.html
index 68ea92a1ba..f0fe26202d 100644
--- a/files/ru/web/javascript/reference/operators/typeof/index.html
+++ b/files/ru/web/javascript/reference/operators/typeof/index.html
@@ -20,7 +20,7 @@ translation_of: Web/JavaScript/Reference/Operators/typeof
<h3 id="Параметры">Параметры</h3>
-<p><code><em>operand</em></code> является выражением, представляющим объект или {{Glossary("Primitive", "примитив")}}, тип которого должен быть возвращен.</p>
+<p><code><em>operand</em></code> является выражением, представляющим объект или {{Glossary("Primitive", "примитив")}}, тип которого должен быть возвращён.</p>
<h2 id="Описание">Описание</h2>
diff --git a/files/ru/web/javascript/reference/statements/async_function/index.html b/files/ru/web/javascript/reference/statements/async_function/index.html
index a956f73e66..7f3b31211f 100644
--- a/files/ru/web/javascript/reference/statements/async_function/index.html
+++ b/files/ru/web/javascript/reference/statements/async_function/index.html
@@ -81,7 +81,7 @@ add2(10).then(v =&gt; {
<div class="warning">
<h4 id="Не_путайте_await_и_Promise.all">Не путайте await и Promise.all</h4>
-<p>Функция <code>add1</code> приостанавливается на 2 секунды для первого <code>await</code> и ещё на 2 для второго. Второй таймер создаётся только после срабатывания первого. В функции <code>add2</code> создаются оба и оба же переходят в состояние <code>await</code>. В результате функция <code>add2</code> завершится скорее через две, чем через четыре секунды, поскольку таймеры работают одновременно. Однако запускаются они все же не параллельно, а друг за другом - такая конструкция не означает автоматического использования <code>Promise.all</code>. Если два или более Promise должны разрешаться параллельно, следует использовать <code>Promise.all</code>.</p>
+<p>Функция <code>add1</code> приостанавливается на 2 секунды для первого <code>await</code> и ещё на 2 для второго. Второй таймер создаётся только после срабатывания первого. В функции <code>add2</code> создаются оба и оба же переходят в состояние <code>await</code>. В результате функция <code>add2</code> завершится скорее через две, чем через четыре секунды, поскольку таймеры работают одновременно. Однако запускаются они всё же не параллельно, а друг за другом - такая конструкция не означает автоматического использования <code>Promise.all</code>. Если два или более Promise должны разрешаться параллельно, следует использовать <code>Promise.all</code>.</p>
</div>
<h3 id="Когда_функция_async_выбрасывает_исключение">Когда функция <code>async </code>выбрасывает исключение</h3>
diff --git a/files/ru/web/javascript/reference/strict_mode/index.html b/files/ru/web/javascript/reference/strict_mode/index.html
index fbf4446b55..fba2587610 100644
--- a/files/ru/web/javascript/reference/strict_mode/index.html
+++ b/files/ru/web/javascript/reference/strict_mode/index.html
@@ -271,7 +271,7 @@ function privilegedInvoker() {
privilegedInvoker();
</pre>
-<p>В-третьих, в функциях строгого режима свойство <code>arguments</code> больше не предоставляет доступ к переменным, созданным внутри функции. В некоторых предыдущих реализациях ECMAScript <code>arguments.caller</code> представлял собой объект, свойства которого являлись ссылками на переменные, созданные внутри функции при её вызове. Это представляет собой <a class="external" href="http://stuff.mit.edu/iap/2008/facebook/">угрозу безопасности</a>, так как нарушает возможность скрывать приватные данные внутри функций (замыканий). Также это делает невозможными большинство оптимизаций. Исходя из этих причин, ни один из современных браузеров не реализует этого поведения. Но все же, ввиду своей исторической функциональности, <code>arguments.caller</code> для функций в строгом режиме всё ещё является неудаляемым свойством, которое вызывает исключение при попытке его чтения или записи:</p>
+<p>В-третьих, в функциях строгого режима свойство <code>arguments</code> больше не предоставляет доступ к переменным, созданным внутри функции. В некоторых предыдущих реализациях ECMAScript <code>arguments.caller</code> представлял собой объект, свойства которого являлись ссылками на переменные, созданные внутри функции при её вызове. Это представляет собой <a class="external" href="http://stuff.mit.edu/iap/2008/facebook/">угрозу безопасности</a>, так как нарушает возможность скрывать приватные данные внутри функций (замыканий). Также это делает невозможными большинство оптимизаций. Исходя из этих причин, ни один из современных браузеров не реализует этого поведения. Но всё же, ввиду своей исторической функциональности, <code>arguments.caller</code> для функций в строгом режиме всё ещё является неудаляемым свойством, которое вызывает исключение при попытке его чтения или записи:</p>
<pre class="brush: js">"use strict";
function fun(a, b) {
@@ -322,7 +322,7 @@ function baz() { // верно
}
</pre>
-<p>Данный запрет не является особенностью строгого режима, потому что такое объявление функций является одним из расширений основного ES5. Но это рекомендация комитета ECMAScript, и браузеры реализуют ее.</p>
+<p>Данный запрет не является особенностью строгого режима, потому что такое объявление функций является одним из расширений основного ES5. Но это рекомендация комитета ECMAScript, и браузеры реализуют её.</p>
<h2 id="Строгий_режим_в_браузерах">Строгий режим в браузерах</h2>
diff --git a/files/ru/web/mathml/element/merror/index.html b/files/ru/web/mathml/element/merror/index.html
index c10046e96b..3af5d3730c 100644
--- a/files/ru/web/mathml/element/merror/index.html
+++ b/files/ru/web/mathml/element/merror/index.html
@@ -10,7 +10,7 @@ translation_of: Web/MathML/Element/merror
---
<div>{{MathMLRef}}</div>
-<p class="summary">Элемент MathML <code>&lt;merror&gt;</code> используется для отображения содержимого в виде сообщений об ошибках. В Firefox это сообщение об ошибке отображается аналогично типичному сообщению об ошибке XML. Обратите внимание, что эта ошибка <strong>не</strong> выдаётся, если ваша разметка MathML неверна или неправильно сформирован XML. Вы все равно получите ошибку разбора XML (в случае XHTML-нотации MathML), которая не имеет ничего общего с <code>&lt;merror&gt;</code>.</p>
+<p class="summary">Элемент MathML <code>&lt;merror&gt;</code> используется для отображения содержимого в виде сообщений об ошибках. В Firefox это сообщение об ошибке отображается аналогично типичному сообщению об ошибке XML. Обратите внимание, что эта ошибка <strong>не</strong> выдаётся, если ваша разметка MathML неверна или неправильно сформирован XML. Вы всё равно получите ошибку разбора XML (в случае XHTML-нотации MathML), которая не имеет ничего общего с <code>&lt;merror&gt;</code>.</p>
<h2 id="Атрибуты">Атрибуты</h2>
diff --git a/files/ru/web/performance/critical_rendering_path/index.html b/files/ru/web/performance/critical_rendering_path/index.html
index ee91e0e4c8..995d8f81c8 100644
--- a/files/ru/web/performance/critical_rendering_path/index.html
+++ b/files/ru/web/performance/critical_rendering_path/index.html
@@ -47,7 +47,7 @@ translation_of: Web/Performance/Critical_rendering_path
<p>Мета тэг viewport, который вы можете указать в Head страницы, определяет ширину видимой области и влияет на компоновку. Без этого тэга браузеры используют ширину "по умолчанию", которая обычно составляет 960px. В браузерах, открывающихся по умолчанию в полноэкранном режиме, например, в браузере телефона, установка тега <code>&lt;meta name="viewport" content="width=device-width"&gt;</code> установит ширину видимой области в 100% от ширины экрана устройства, вместо того, чтобы использовать ширину по умолчанию. Эта ширина (<code>device-width)</code> изменяется каждый раз, когда пользователь поворачивает телефон. Это приводит к запуску этапа компоновки. Равно как и при изменении размеров окна в обычном браузере.</p>
-<p>На производительность компоновки (layout) непосредственно влияет DOM - чем больше узлов (nodes) в вашем документе, тем больше времени понадобится на перерасчёт позиций и размеров всех элементов. Компоновка может стать узким местом, ведущим к зависаниям, особенно если выполняет одновременно со скроллом или другой анимацией. И хотя задержка 20мс при загрузке или переориентации экрана может быть приемлемой, это все равно может привести к подвисаниям при анимации и скролле. Каждый раз, когда дерево рендера (render tree) модифицируется, например, из-за добавления узла (node), его модификации или при изменении стилей box-модели, запускается компоновка.</p>
+<p>На производительность компоновки (layout) непосредственно влияет DOM - чем больше узлов (nodes) в вашем документе, тем больше времени понадобится на перерасчёт позиций и размеров всех элементов. Компоновка может стать узким местом, ведущим к зависаниям, особенно если выполняет одновременно со скроллом или другой анимацией. И хотя задержка 20мс при загрузке или переориентации экрана может быть приемлемой, это всё равно может привести к подвисаниям при анимации и скролле. Каждый раз, когда дерево рендера (render tree) модифицируется, например, из-за добавления узла (node), его модификации или при изменении стилей box-модели, запускается компоновка.</p>
<p>Для уменьшения частоты и продолжительности этого этапа, группируйте обновления экрана и избегайте анимации свойств, связанных с box-моделью элементов.</p>
diff --git a/files/ru/web/performance/fundamentals/index.html b/files/ru/web/performance/fundamentals/index.html
index 704ebee8a2..a809d421f9 100644
--- a/files/ru/web/performance/fundamentals/index.html
+++ b/files/ru/web/performance/fundamentals/index.html
@@ -137,7 +137,7 @@ original_slug: Web/Performance/Основы
<p>При отрисовывании контента в Canvas, разработчик должен сам позаботиться о достижении целей по частоте кадров, ведь он получает полный контроль над всем, что отрисовывается.</p>
-<p>При использовании HTML и CSS разработчику необходимо использовать правильные примитивы. Firefox очень хорошо оптимизирован для скролла любого контента. Обычно это не является проблемой. Но очень часто, разменивая качество и стабильность на скорость, мы идём на ухищрения, которые могут "переоптимизировать" страницу так, что частота кадров будет выше нужной нам. Так как глаз все равно слабо различает FPS больше 60, нет необходимости в таких оптимизациях. Одна из таких оптимизаций - использование статического рендера вместо CSS-градиента. В некоторых случаях это излишне. Чтобы не применять оптимизацию, вы можете воспользоваться CSS <a href="/en-US/docs/Web/Guide/CSS/Media_queries">media queries</a>, которые позволят использовать подобные решения только для конкретных устройств.</p>
+<p>При использовании HTML и CSS разработчику необходимо использовать правильные примитивы. Firefox очень хорошо оптимизирован для скролла любого контента. Обычно это не является проблемой. Но очень часто, разменивая качество и стабильность на скорость, мы идём на ухищрения, которые могут "переоптимизировать" страницу так, что частота кадров будет выше нужной нам. Так как глаз всё равно слабо различает FPS больше 60, нет необходимости в таких оптимизациях. Одна из таких оптимизаций - использование статического рендера вместо CSS-градиента. В некоторых случаях это излишне. Чтобы не применять оптимизацию, вы можете воспользоваться CSS <a href="/en-US/docs/Web/Guide/CSS/Media_queries">media queries</a>, которые позволят использовать подобные решения только для конкретных устройств.</p>
<p>Множество приложений используют Transitions и Animations для перехода между страницами или панелями. Например, когда пользователь нажимает кнопку "Настройки", чтобы перейти на другой экран; или для вызова поп-апа. Firefox оптимизирован для выполнения переходов и анимаций для сцен, которые:</p>
diff --git a/files/ru/web/performance/how_browsers_work/index.html b/files/ru/web/performance/how_browsers_work/index.html
index 97c05dfae7..5915c27700 100644
--- a/files/ru/web/performance/how_browsers_work/index.html
+++ b/files/ru/web/performance/how_browsers_work/index.html
@@ -109,7 +109,7 @@ translation_of: Web/Performance/How_browsers_work
<p>DOM (Объектная модель документа) - это внутреннее представление разметки HTML. Браузер предоставляет доступ к манипуляции объектами этой модели через разные JavaScript API.</p>
-<p>Даже если ответ на запрос больше 14КБ, браузер все равно начинает парсинг данных и пытается отрисовать страницу с теми данными, которые уже доступны. Именно поэтому при оптимизации производительности очень важно включать в инициирующий 14КБ ответ все необходимые для рендера данные - так браузер сможет быстрее начать формирование страницы. Однако, прежде чем что-либо появится на экране, HTML, CSS и JavaScript должны быть обработаны.</p>
+<p>Даже если ответ на запрос больше 14КБ, браузер всё равно начинает парсинг данных и пытается отрисовать страницу с теми данными, которые уже доступны. Именно поэтому при оптимизации производительности очень важно включать в инициирующий 14КБ ответ все необходимые для рендера данные - так браузер сможет быстрее начать формирование страницы. Однако, прежде чем что-либо появится на экране, HTML, CSS и JavaScript должны быть обработаны.</p>
<h3 id="Построение_дерева_объектной_модели_документа">Построение дерева объектной модели документа</h3>
@@ -169,7 +169,7 @@ translation_of: Web/Performance/How_browsers_work
<p>Третий шаг в критическом пути рендеринга - это комбинирование DOM и CSSOM в дерево рендеринга. Конструирование этого дерева начинается с прохода всего DOM-дерева от корня, с выявлением каждого видимого узла.</p>
-<p>Элементы, которые не должны быть показаны, например, <code>&lt;head&gt;</code>, а так же их дети или любые элементы с <code>display:none</code>, такие как <code>script { display: none; }</code>, не будут включены в дерево рендера, так как они не должны быть отрисованы. Узлы с правилом <code>visibility: hidden</code> включены в дерево рендера, так как они все равно занимают своё место. Так как мы не указали никаких специальных правил для перезаписи стилей агента по умолчанию, узел <code>script</code> в примере выше также не будет включён в дерево рендера.</p>
+<p>Элементы, которые не должны быть показаны, например, <code>&lt;head&gt;</code>, а так же их дети или любые элементы с <code>display:none</code>, такие как <code>script { display: none; }</code>, не будут включены в дерево рендера, так как они не должны быть отрисованы. Узлы с правилом <code>visibility: hidden</code> включены в дерево рендера, так как они всё равно занимают своё место. Так как мы не указали никаких специальных правил для перезаписи стилей агента по умолчанию, узел <code>script</code> в примере выше также не будет включён в дерево рендера.</p>
<p>Каждый видимый узел имеет свои правила из CSSOM. Дерево рендера содержит все видимые узлы с их содержимым и вычисленными стилями. Стили определяются путём применения всех подходящих правил с использованием <a href="/en-US/docs/Web/CSS/Cascade">CSS каскада.</a></p>
diff --git a/files/ru/web/performance/optimizing_startup_performance/index.html b/files/ru/web/performance/optimizing_startup_performance/index.html
index 3358f1b8f4..bbec4006e4 100644
--- a/files/ru/web/performance/optimizing_startup_performance/index.html
+++ b/files/ru/web/performance/optimizing_startup_performance/index.html
@@ -19,9 +19,9 @@ translation_of: Web/Performance/Optimizing_startup_performance
<p>Если вы начинаете ваш проект с нуля, обычно очень легко начать писать код "правильно", делая все изначально асинхронным. Все вычисления при запуски должны выполняться в фоновых потоках, в то время как основной поток должен держаться максимально очищенным от лишних функций. Включайте индикатор прогресса для того, чтобы пользователь знал, что сейчас происходит и не думал, что приложение сломано. В теории, если вы только начинаете разработку приложения - это все должно быть очень просто.</p>
-<p>С другой стороны, потребуются некоторые ухищрения, если вы пытаетесь портировать существующее десктопное приложение в Web или привыкли писать такие. Десктопные приложения обычно не нуждаются в написании кода в асинхронной манере, потому что операционная система берет заботу об этом на себя. В исходниках такого приложения может быть лишь один поток обработки кода, но даже он может быть легко разбит на асинхронные этапы (запуском каждой новой итерации потока по отдельности). В таких приложениях запуск часто представляет собой последовательную монолитную процедуру, которая время от времени обращается к метрикам прогресса и обновляет их.</p>
+<p>С другой стороны, потребуются некоторые ухищрения, если вы пытаетесь портировать существующее десктопное приложение в Web или привыкли писать такие. Десктопные приложения обычно не нуждаются в написании кода в асинхронной манере, потому что операционная система берёт заботу об этом на себя. В исходниках такого приложения может быть лишь один поток обработки кода, но даже он может быть легко разбит на асинхронные этапы (запуском каждой новой итерации потока по отдельности). В таких приложениях запуск часто представляет собой последовательную монолитную процедуру, которая время от времени обращается к метрикам прогресса и обновляет их.</p>
-<p>И хотя вы можете использовать <a href="/en-US/docs/DOM/Using_web_workers" title="/en-US/docs/DOM/Using_web_workers">Web workers</a>, чтобы обработать очень большие и "тяжёлые" скрипты асинхронно, вы должны учитывать некоторые ограничения. Web Worker-ы не имеют доступа к некоторым API браузера: DOM, <a href="/en-US/docs/WebGL" title="/en-US/docs/WebGL">WebGL</a> или audio, они не могут посылать синхронные сообщения в основной поток, вы даже не можете проксировать некоторые из этих API в основной поток. Это всё означает, что вы можете поместить в Web Worker-ы только "чистые функции", но вам все равно придётся вычислять огромную часть данных в основном потоке. Поэтому очень полезно разрабатывать систему так, чтобы в ней было как можно больше чистых функций - так их будет проще делегировать  последствии.</p>
+<p>И хотя вы можете использовать <a href="/en-US/docs/DOM/Using_web_workers" title="/en-US/docs/DOM/Using_web_workers">Web workers</a>, чтобы обработать очень большие и "тяжёлые" скрипты асинхронно, вы должны учитывать некоторые ограничения. Web Worker-ы не имеют доступа к некоторым API браузера: DOM, <a href="/en-US/docs/WebGL" title="/en-US/docs/WebGL">WebGL</a> или audio, они не могут посылать синхронные сообщения в основной поток, вы даже не можете проксировать некоторые из этих API в основной поток. Это всё означает, что вы можете поместить в Web Worker-ы только "чистые функции", но вам всё равно придётся вычислять огромную часть данных в основном потоке. Поэтому очень полезно разрабатывать систему так, чтобы в ней было как можно больше чистых функций - так их будет проще делегировать  последствии.</p>
<p>Тем не менее, даже код в основном потоке можно сделать асинхронным, приложив лишь небольшие усилия.</p>
diff --git a/files/ru/web/progressive_web_apps/installable_pwas/index.html b/files/ru/web/progressive_web_apps/installable_pwas/index.html
index 3aa9e01580..9f6fdd30df 100644
--- a/files/ru/web/progressive_web_apps/installable_pwas/index.html
+++ b/files/ru/web/progressive_web_apps/installable_pwas/index.html
@@ -76,7 +76,7 @@ translation_of: Web/Progressive_web_apps/Installable_PWAs
<h2 id="Добавить_на_домашний_экран">Добавить на домашний экран</h2>
-<p>"Добавить на домашний экран" (кратко: a2hs) - это функция, реализованная браузерами, которая берет информацию, найденную в веб-манифесте, и использует для добавления приложения на домашний экран устройства со значком и именем. Это работает при выполнении требований, описанных выше.</p>
+<p>"Добавить на домашний экран" (кратко: a2hs) - это функция, реализованная браузерами, которая берёт информацию, найденную в веб-манифесте, и использует для добавления приложения на домашний экран устройства со значком и именем. Это работает при выполнении требований, описанных выше.</p>
<p>Когда пользователь посещает PWA с помощью браузера, поддерживающего технологию, должен отобразиться значок, указывающий на возможность установки приложения в качестве PWA.</p>
diff --git a/files/ru/web/svg/element/use/index.html b/files/ru/web/svg/element/use/index.html
index 1efa68b4e0..79b030eca1 100644
--- a/files/ru/web/svg/element/use/index.html
+++ b/files/ru/web/svg/element/use/index.html
@@ -11,7 +11,7 @@ original_slug: Web/SVG/Элемент/use
---
<div>{{SVGRef}}</div>
-<p>Элемент <strong><code>&lt;use&gt;</code></strong> берёт элементы из SVG-документа и дублирует их где-то еще.</p>
+<p>Элемент <strong><code>&lt;use&gt;</code></strong> берёт элементы из SVG-документа и дублирует их где-то ещё.</p>
<div id="Exemple">
<div class="hidden">
diff --git a/files/ru/web/svg/svg_as_an_image/index.html b/files/ru/web/svg/svg_as_an_image/index.html
index 098deb11f0..9936eed0d5 100644
--- a/files/ru/web/svg/svg_as_an_image/index.html
+++ b/files/ru/web/svg/svg_as_an_image/index.html
@@ -27,7 +27,7 @@ translation_of: Web/SVG/SVG_as_an_Image
<p>В целях безопасности, Gecko накладывает некоторые ограничения на контент SVG, когда он используется в качестве изображения:</p>
<ul>
- <li><a href="/en-US/docs/JavaScript">JavaScript</a> отключен.</li>
+ <li><a href="/en-US/docs/JavaScript">JavaScript</a> отключён.</li>
<li>Внешние ресурсы (например, изображения, таблицы стилей) не могут быть загружены, хотя их можно использовать, если они встроены в данные: URI.</li>
<li>{{cssxref(":visited")}}-стили ссылок не отображаются.</li>
<li>Стилизация виджитов на платформе (основанная на теме ОС) отключена.</li>
diff --git a/files/ru/web/svg/tutorial/basic_transformations/index.html b/files/ru/web/svg/tutorial/basic_transformations/index.html
index 634ef93da3..3c118fb63a 100644
--- a/files/ru/web/svg/tutorial/basic_transformations/index.html
+++ b/files/ru/web/svg/tutorial/basic_transformations/index.html
@@ -52,7 +52,7 @@ original_slug: Web/SVG/Tutorial/Базовые_Преобразования
<h2 id="Смещение_углов">Смещение углов</h2>
-<p>Чтобы сделать ромб из нашего прямоугольника, доступны преобразования skewX () и skewY (). Каждый из них принимает угол, определяющий, насколько элемент будет искажен.</p>
+<p>Чтобы сделать ромб из нашего прямоугольника, доступны преобразования skewX () и skewY (). Каждый из них принимает угол, определяющий, насколько элемент будет искажён.</p>
<h2 id="Масштабирование">Масштабирование</h2>
diff --git a/files/ru/web/svg/tutorial/clipping_and_masking/index.html b/files/ru/web/svg/tutorial/clipping_and_masking/index.html
index c87cfa7287..afc8d8d23c 100644
--- a/files/ru/web/svg/tutorial/clipping_and_masking/index.html
+++ b/files/ru/web/svg/tutorial/clipping_and_masking/index.html
@@ -35,7 +35,7 @@ translation_of: Web/SVG/Tutorial/Clipping_and_masking
<p>{{ EmbedLiveSample('Creating_clips','240','240','/files/3224/clipdemo.png') }}</p>
-<p>Теперь мы получили полуокружность без необходимости использования элемента <code>path</code>.  При “обрезке” каждый путь внутри <code>clipPath</code> проверяется и оценивается вместе с его свойствами <code>stroke</code> и <code>transform</code>. Другими словами, все что не находится в залитой области <code>clipPath</code> не будет отображено. Цвет, непрозрачность и т. д. не влияют на результат.</p>
+<p>Теперь мы получили полуокружность без необходимости использования элемента <code>path</code>.  При “обрезке” каждый путь внутри <code>clipPath</code> проверяется и оценивается вместе с его свойствами <code>stroke</code> и <code>transform</code>. Другими словами, всё что не находится в залитой области <code>clipPath</code> не будет отображено. Цвет, непрозрачность и т. д. не влияют на результат.</p>
<h3 id="Маска">Маска</h3>
diff --git a/files/ru/web/svg/tutorial/fills_and_strokes/index.html b/files/ru/web/svg/tutorial/fills_and_strokes/index.html
index e113c00376..e10309f140 100644
--- a/files/ru/web/svg/tutorial/fills_and_strokes/index.html
+++ b/files/ru/web/svg/tutorial/fills_and_strokes/index.html
@@ -88,7 +88,7 @@ translation_of: Web/SVG/Tutorial/Fills_and_Strokes
<p>Замечание: в отличие от путей, эти числа ДОЛЖНЫ быть разделены запятыми (пробелы игнорируются).</p>
</div>
-<p>Первое число определяет длину штриха, второе - длину между штрихами. В примере выше, второй путь чередует заливку штрихом в 5 пикселей, затем 5 пустых пикселей перед следующим штрихом в 5 пикселей. Вы можете задать больше чисел, если хотите более сложную систему штрихов. В первом примере задано 3 числа и в этом случае рендер берет эти числа дважды, чтобы создать чётный паттерн. Т.о. первый путь отображается 5 закрашенными, 10 пустыми, 5 закрашенными и затем ещё раз 5 пустыми, 10 закрашенными, 5 пустыми "пикселями". Затем паттерн повторяется.</p>
+<p>Первое число определяет длину штриха, второе - длину между штрихами. В примере выше, второй путь чередует заливку штрихом в 5 пикселей, затем 5 пустых пикселей перед следующим штрихом в 5 пикселей. Вы можете задать больше чисел, если хотите более сложную систему штрихов. В первом примере задано 3 числа и в этом случае рендер берёт эти числа дважды, чтобы создать чётный паттерн. Т.о. первый путь отображается 5 закрашенными, 10 пустыми, 5 закрашенными и затем ещё раз 5 пустыми, 10 закрашенными, 5 пустыми "пикселями". Затем паттерн повторяется.</p>
<p>Также есть дополнительные <strong>stroke </strong>и <strong>fill </strong>свойства: <code><a href="/en-US/docs/Web/SVG/Attribute/fill-rule">fill-rule</a>, которое определяет как будут заливаться сложные фигуры, которые имеют пересечения внутри себя;</code> <code><a href="/en-US/docs/Web/SVG/Attribute/stroke-miterlimit">stroke-miterlimit</a>, </code>which determines if a stroke should draw miters<code> и </code><a href="/en-US/docs/Web/SVG/Attribute/stroke-dashoffset">stroke-dashoffset</a>, который указывает где начинается dash-array в линии (позволяет задать смещение пунктирной обводки относительно первоначального положения)</p>
diff --git a/files/ru/web/svg/tutorial/svg_in_html_introduction/index.html b/files/ru/web/svg/tutorial/svg_in_html_introduction/index.html
index a897157fb4..aba7b679fd 100644
--- a/files/ru/web/svg/tutorial/svg_in_html_introduction/index.html
+++ b/files/ru/web/svg/tutorial/svg_in_html_introduction/index.html
@@ -61,7 +61,7 @@ translation_of: Web/SVG/Tutorial/SVG_In_HTML_Introduction
<ul>
<li>Мы использовали штатную XHTML форму, которая уже может присутствовать на веб-сайте, и добавили привлекательный, интерактивный фон</li>
- <li>Подход имеет обратную совместимость с браузерами, которые не поддерживают SVG; Элемент SVG просто не отобразится, не повлияв на текущую верстку.</li>
+ <li>Подход имеет обратную совместимость с браузерами, которые не поддерживают SVG; Элемент SVG просто не отобразится, не повлияв на текущую вёрстку.</li>
<li>Это очень просто сделать.</li>
<li>Изображение масштабируемое и может растягиваться до нужного размера</li>
<li>Мы можем применять декларированные стили как для HTML так и для SVG</li>
diff --git a/files/ru/web/web_components/index.html b/files/ru/web/web_components/index.html
index 55d782175d..0a73ef5a4d 100644
--- a/files/ru/web/web_components/index.html
+++ b/files/ru/web/web_components/index.html
@@ -93,7 +93,7 @@ translation_of: Web/Web_Components
<dd>Расширения интерфейса <code>Element</code>, связанные с теневой DOM:
<ul>
<li>Метод {{domxref("Element.attachShadow()")}} прикрепляет теневое дерево DOM к указанному элементу.</li>
- <li>Свойство {{domxref ("Element.shadowRoot")}} возвращает теневой корневой узел, прикреплённый к указанному элементу, или значение <code>null</code>, если корневой узел не прикреплен.</li>
+ <li>Свойство {{domxref ("Element.shadowRoot")}} возвращает теневой корневой узел, прикреплённый к указанному элементу, или значение <code>null</code>, если корневой узел не прикреплён.</li>
</ul>
</dd>
<dt>Соответствующие дополнения {{domxref("Node")}}</dt>
diff --git a/files/ru/webassembly/c_to_wasm/index.html b/files/ru/webassembly/c_to_wasm/index.html
index 06a835effe..28517bca19 100644
--- a/files/ru/webassembly/c_to_wasm/index.html
+++ b/files/ru/webassembly/c_to_wasm/index.html
@@ -61,7 +61,7 @@ int main(int argc, char ** argv) {
<h3 id="Запуск_вашего_примера">Запуск вашего примера</h3>
-<p>Теперь, все что нужно чтобы запустить полученный  <code>hello.html</code> в браузере, это поддержка WebAssembly. Он включён по умолчанию в Firefox 52+, Chrome 57+ и последних версиях Opera. Также вы можете использовать модули WebAssembly в Firefox 47+, включив флаг <code>javascript.options.wasm</code> в <em>about:config</em>, или в Chrome 51+ и Opera 38+ перейдя в <em>chrome://flags</em> и включив флаг <em>Experimental WebAssembly.</em></p>
+<p>Теперь, всё что нужно чтобы запустить полученный  <code>hello.html</code> в браузере, это поддержка WebAssembly. Он включён по умолчанию в Firefox 52+, Chrome 57+ и последних версиях Opera. Также вы можете использовать модули WebAssembly в Firefox 47+, включив флаг <code>javascript.options.wasm</code> в <em>about:config</em>, или в Chrome 51+ и Opera 38+ перейдя в <em>chrome://flags</em> и включив флаг <em>Experimental WebAssembly.</em></p>
<p>Если все работает как планировалось, вы должны увидеть надпись "Hello world" на открывшейся веб-странице и в JavaScript консоли вашего браузера. Поздравляем, вы только что скомпилировали программу на Си в WebAssembly и запустили её в своём браузере!</p>
diff --git a/files/ru/webassembly/exported_functions/index.html b/files/ru/webassembly/exported_functions/index.html
index d46ae2ad53..2aaadb80e9 100644
--- a/files/ru/webassembly/exported_functions/index.html
+++ b/files/ru/webassembly/exported_functions/index.html
@@ -63,7 +63,7 @@ typeof testFunc;</pre>
[native code]
}</pre>
-<p>Это наводит на мысль о том что эта функция является оберткой.</p>
+<p>Это наводит на мысль о том что эта функция является обёрткой.</p>
<p>Дополнительные сведения которые нужно знать при работе с экспортированными функциями:</p>
diff --git a/files/ru/webassembly/loading_and_running/index.html b/files/ru/webassembly/loading_and_running/index.html
index 20460d2e40..ead3996e3d 100644
--- a/files/ru/webassembly/loading_and_running/index.html
+++ b/files/ru/webassembly/loading_and_running/index.html
@@ -86,7 +86,7 @@ translation_of: WebAssembly/Loading_and_running
<h2 id="Используя_XMLHttpRequest">Используя XMLHttpRequest</h2>
-<p><code><a href="/en-US/docs/Web/API/XMLHttpRequest">XMLHttpRequest</a></code> <span class="tlid-translation translation" lang="ru"><span title="">несколько старше, чем</span></span> Fetch, <span class="tlid-translation translation" lang="ru"><span title="">но все же может успешно использоваться для получения типизированного массива.</span> <span title="">Опять же, если предположить, что наш модуль называется </span></span><code>simple.wasm</code>:</p>
+<p><code><a href="/en-US/docs/Web/API/XMLHttpRequest">XMLHttpRequest</a></code> <span class="tlid-translation translation" lang="ru"><span title="">несколько старше, чем</span></span> Fetch, <span class="tlid-translation translation" lang="ru"><span title="">но всё же может успешно использоваться для получения типизированного массива.</span> <span title="">Опять же, если предположить, что наш модуль называется </span></span><code>simple.wasm</code>:</p>
<ol>
<li><span class="tlid-translation translation" lang="ru"><span title="">Создайте новый экземпляр </span></span>{{domxref("XMLHttpRequest()")}} <span class="tlid-translation translation" lang="ru"><span title="">и используйте его метод </span></span>{{domxref("XMLHttpRequest.open","open()")}} <span class="tlid-translation translation" lang="ru"><span title="">для открытия запроса, задав для метода запроса значение </span></span> <code>GET</code> <span class="tlid-translation translation" lang="ru"><span title="">и указав путь к файлу, который мы хотим получить.</span></span></li>
diff --git a/files/ru/webassembly/rust_to_wasm/index.html b/files/ru/webassembly/rust_to_wasm/index.html
index 381d424bf0..bf50ad9fa1 100644
--- a/files/ru/webassembly/rust_to_wasm/index.html
+++ b/files/ru/webassembly/rust_to_wasm/index.html
@@ -170,7 +170,7 @@ pub fn greet(name: &amp;str) {
<p>Все это передаётся в <code>alert()</code>, так что когда мы вызовем функцию, мы увидим алерт с "Hello, Steve!" внутри него!</p>
-<p>Теперь, когда наша библиотека написана, давайте соберём ее.</p>
+<p>Теперь, когда наша библиотека написана, давайте соберём её.</p>
<h3 id="Компиляция_кода_в_WebAssembly">Компиляция кода в WebAssembly</h3>
@@ -297,7 +297,7 @@ js.then(js =&gt; {
<p>Заметьте, что вам нужно будет снова ввести ваше имя для npm.</p>
-<p>Так мы импортируем наш модуль из папки <code>node_modules</code>. Это не считается лучшей практикой, но это пример, так что пока сойдёт. Как только файл загрузится, он вызовет функцию <code>greet</code> из этого модуля, передав <code>"WebAssembly"</code>, как строку. Обратите внимание, что здесь нет ничего особенного, и все же мы вызываем код на Rust! Насколько JavaScript код может судить, это просто обычный модуль.</p>
+<p>Так мы импортируем наш модуль из папки <code>node_modules</code>. Это не считается лучшей практикой, но это пример, так что пока сойдёт. Как только файл загрузится, он вызовет функцию <code>greet</code> из этого модуля, передав <code>"WebAssembly"</code>, как строку. Обратите внимание, что здесь нет ничего особенного, и всё же мы вызываем код на Rust! Насколько JavaScript код может судить, это просто обычный модуль.</p>
<p>Мы закончили! Давайте попробуем:</p>