У меня ограниченный фон для кодирования собственных приложений с использованием таких языков, как С++, C и Java, но теперь я пытаюсь проникнуть в веб-разработку. Хотя большинство из них довольно простые и чистые, у меня возникает несколько проблем с пониманием того, как я могу создавать веб-сайты и webapps, которые хорошо выполняют повторное использование существующего кода там, где это применимо. Насколько я понимаю, при использовании таких вещей, как JavaScript, CSS и PHP, вы можете просто импортировать скрипты из других файлов для использования в любом html файле, что очень полезно. Но мне сложно понять, как это можно сделать с HTML, возможно ли это?
Например, скажем, у меня есть одностраничный веб-сайт с "заголовком" и рядом уникального контента ниже (например, логотип stackoverflow, кнопки и меню в верхней части этой страницы). Но теперь я хочу расширить свой веб-сайт и добавить 3 новых страницы, которые имеют сходный макет и имеют ту же самую "панель заголовка" вверху. Один из способов добиться этого - просто скопировать тот, который содержит эту часть кода, и вставить его в page2.html, page3.html и page4.html; уникальный код для каждой страницы будет отдельным, и он будет работать нормально. Проблема, с которой я сталкиваюсь в этом подходе, заключается в том, что очень больно изменять содержимое "заголовка" без прохождения нескольких страниц HTML, и вероятность создания странных несоответствий в дизайне/контенте становится высокой. Я предполагаю, что "stackoverflow.com/info/ask" и "stackoverflow.com/tags" не содержат дубликатов, копировать и вставлять код для элементов в верхней части страницы, но я не уверен как добиться этого из-за моего ограниченного опыта HTML.
Итак, есть ли способ "включить" или "импортировать" HTML-код ради чистого повторного использования кода на нескольких страницах? Является ли эта функциональность встроенной в HTML или мне нужно глубже вникать в такие вещи, как JavaScript и PHP, чтобы создавать хорошо структурированные веб-сайты? Я искал ответ на этот вопрос, и несколько человек предложили iframes, но затем почти сразу предложили против их использования в современном веб-дизайне. Что может быть хорошим подходом?