Вопрос или проблема
Фоновая ошибка –
Я пытаюсь сделать так, чтобы каждый отдельный раздел на странице имел свой цвет, но он ведет себя как контейнер, и за ним есть общий цвет фона. Может, это из-за чего-то неправильного, что я сделал здесь или в коде React? Даже когда я пробовал что-то вроде width: 100%, это вызвало сдвиг вправо, добавив больше пространства по всему сайту справа.
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Permanent+Marker&display=swap');
:root {
\--primary-color: #e4c968;
\--secondary-color: #4a4a4a;
\--text-color: #333;
\--bg-color: #f9f7f0;
\--white: #ffffff;
}
body {
font-family: 'Poppins', sans-serif;
background-color: var(--bg-color);
color: var(--text-color);
line-height: 1.6;
margin: 0;
padding: 0;
}
.landing-page {
max-width: 100%;
margin: 0 auto;
}
header {
padding: 20px 0;
background-color: var(--white);
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}
nav {
display: flex;
justify-content: space-between;
align-items: center;
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
}
.logo {
font-family: "Permanent Marker", sans-serif;
font-size: 2rem;
font-weight: 700;
color: var(--primary-color);
}
nav ul {
display: flex;
list-style: none;
margin: 0;
padding: 0;
}
nav ul li {
margin-left: 30px;
}
nav ul li a {
text-decoration: none;
color: var(--secondary-color);
font-weight: 600;
transition: color 0.3s ease;
}
nav ul li a:hover {
color: var(--primary-color);
}
.login-button {
background-color: var(--primary-color);
color: var(--secondary-color);
border: none;
padding: 10px 20px;
border-radius: 5px;
font-weight: 600;
cursor: pointer;
transition: all 0.3s ease;
}
.login-button:hover {
background-color: #d1b85f;
}
.hero {
display: flex;
justify-content: space-between;
align-items: center;
padding: 80px 20px;
max-width: 1200px;
margin: 0 auto;
}
.hero-content {
flex: 1;
}
.hero-content h1 {
font-size: 3.5rem;
margin-bottom: 20px;
color: var(--secondary-color);
}
.hero-content p {
font-size: 1.2rem;
margin-bottom: 30px;
color: var(--text-color);
}
.cta-button {
background-color: var(--primary-color);
color: var(--secondary-color);
border: none;
padding: 15px 30px;
border-radius: 5px;
font-size: 1.1rem;
font-weight: 600;
cursor: pointer;
transition: all 0.3s ease;
display: flex;
align-items: center;
gap: 10px;
}
.cta-button:hover {
background-color: #d1b85f;
}
.auth-form {
flex: 1;
max-width: 400px;
background-color: var(--white);
padding: 40px;
border-radius: 10px;
box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}
.auth-form h2 {
margin-bottom: 20px;
font-size: 1.8rem;
color: var(--secondary-color);
}
.auth-form input {
width: 100%;
padding: 12px;
margin-bottom: 15px;
border: 1px solid #ddd;
border-radius: 5px;
font-size: 1rem;
}
.auth-form button\[type="submit"\] {
width: 100%;
background-color: var(--primary-color);
color: var(--secondary-color);
border: none;
padding: 12px;
border-radius: 5px;
font-size: 1rem;
font-weight: 600;
cursor: pointer;
transition: all 0.3s ease;
}
.auth-form button\[type="submit"\]:hover {
background-color: #d1b85f;
}
.text-button {
background: none;
border: none;
color: var(--primary-color);
cursor: pointer;
font-weight: 600;
}
.features {
padding: 80px 20px;
text-align: center;
background-color: var(--white);
}
.features h2 {
font-size: 2.5rem;
margin-bottom: 50px;
color: var(--secondary-color);
}
.feature-container {
display: flex;
justify-content: space-between;
gap: 30px;
max-width: 1200px;
margin: 0 auto;
}
.feature {
flex: 1;
background-color: var(--bg-color);
padding: 40px;
border-radius: 10px;
box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
transition: transform 0.3s ease;
}
.feature:hover {
transform: translateY(-10px);
}
.feature-icon {
font-size: 3rem;
color: var(--primary-color);
margin-bottom: 20px;
}
.feature h3 {
font-size: 1.5rem;
margin-bottom: 15px;
color: var(--secondary-color);
}
footer {
background-color: var(--secondary-color);
color: var(--white);
padding: 50px 0 20px;
}
.footer-content {
display: flex;
justify-content: center;
flex-wrap: wrap;
margin-bottom: 30px;
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
}
.contact-info {
margin-bottom: 20px;
}
.contact-info h3 {
font-size: 1.2rem;
margin-bottom: 10px;
color: var(--primary-color);
}
.contact-info span {
display: inline-block;
margin: 0 15px;
font-size: 0.9rem;
}
.contact-info svg {
margin-right: 5px;
color: var(--primary-color);
}
.footer-section {
flex: 1;
margin-right: 30px;
margin-bottom: 30px;
}
.footer-section h3 {
font-size: 1.2rem;
margin-bottom: 15px;
color: var(--primary-color);
}
.footer-section ul {
list-style: none;
padding: 0;
}
.footer-section ul li {
margin-bottom: 10px;
}
.footer-section ul li a {
color: #ddd;
text-decoration: none;
transition: color 0.3s ease;
}
.footer-section ul li a:hover {
color: var(--primary-color);
}
.footer-bottom {
border-top: 1px solid #555;
padding-top: 20px;
text-align: center;
font-size: 0.9rem;
max-width: 1200px;
margin: 0 auto;
padding: 20px;
}
.footer-links {
margin-top: 15px;
}
.footer-links a {
color: #ddd;
text-decoration: none;
margin: 0 10px;
transition: color 0.3s ease;
}
.footer-links a:hover {
color: var(--primary-color);
}
@media (max-width: 768px) {
.hero {
flex-direction: column;
}
.auth-form {
margin-top: 50px;
}
.feature-container {
flex-direction: column;
}
}
Сделайте так, чтобы каждый отдельный раздел на странице имел свой цвет
Ответ или решение
Для того чтобы каждый раздел на странице имел свой собственный цвет, а не был затянут прозрачным фоном, вам необходимо обратить внимание на следующие аспекты в CSS и структуре HTML. Ваш код уже содержит много необходимых стилей, но мы добавим некоторые элементы и сделаем небольшие корректировки.
1. Оп ределение цвета для различных секций:
Для начала, вам нужно задать уникальные цвета для каждой секции. Например, вы можете создать переменные для этих цветов и задать их в соответствующих секциях:
:root {
--primary-color: #e4c968;
--secondary-color: #4a4a4a;
--text-color: #333;
--bg-color: #f9f7f0;
--white: #ffffff;
--hero-bg: #ffcccc; /* Цвет фона для секции героя */
--features-bg: #ccffcc; /* Цвет фона для секции с функциями */
--footer-bg: #444444; /* Цвет фона для подвала */
}
2. Применение цветов к секциям:
Теперь давайте применим эти цвета к различным секциям вашей страницы. Например:
.header {
background-color: var(--white);
}
.hero {
background-color: var(--hero-bg);
}
.features {
background-color: var(--features-bg);
}
footer {
background-color: var(--footer-bg);
color: var(--white);
}
3. Удаление общих стилей:
Убедитесь, что секции не имеют стилевых конфликтов, которые могли бы вызывать отображение фона. Убедитесь, что свойства, такие как margin
и padding
, установлены правильно. Если у вас есть контейнеры, проверьте, не добавляются ли к ним внешние отступы.
4. Убедитесь в ширине контейнеров:
Ваше свойство max-width: 100%;
в классе .landing-page
может вызывать проблемы. Проверьте, корректно ли применены стили для контейнера, а также попробуйте использовать width: 100%;
для .landing-page
, чтобы он не превышал ширины видимой области.
5. Проверка на наличие «шумных» стилей:
Если после всех этих изменений у вас все еще есть проблемы с фоном, возможно, вы используете другие сторонние библиотеки или CSS-фреймворки, которые могут менять стили. В таком случае вам нужно будет проверить ваши стили или переопределить их.
Пример HTML-кода:
Убедитесь, что структура вашего HTML выглядит примерно так:
<body>
<header class="header">...</header>
<section class="hero">...</section>
<section class="features">...</section>
<footer>...</footer>
</body>
Подведение итогов:
Следуя этим рекомендациям, каждая секция на вашей странице сможет иметь свой уникальный цвет фона без конфликта с общим фоном. Убедитесь, что вы проверяете страницы на различных устройствах и разрешениях экранов, чтобы подтвердить, что стили закладываются правильно.
Если проблема все еще будет сохраняться, пожалуйста, предоставьте дополнительные детали о коде или используемом фреймворке, чтобы мы могли помочь вам более точно.