В этом есть вызов.
Юкоз платформа стандартизированная, она задаёт рамки, которые сложно расширить, и многие разработчики просто принимают их как данность. Но именно в ограничениях рождаются идеи, которые выделяются. Прыгнуть выше головы и сделать что-то нестандартное удаётся единицам. Даже базовые элементы вроде формы регистрации на многих современных сайтах выглядят скучно и ограниченно, тогда как можно создать продукт с гораздо более продуманной логикой, красивым интерфейсом и высокой функциональностью.
На нормальном хостинге создать продвинутый сайт на PHP сравнительно не сложно.
Но сделать то же самое на Юкозе , это уже игра на грани возможностей.
Проблемы возникают постоянно, ограничения платформы проверяют твой интеллект и терпение. Именно в этом и заключается ценность: чем сложнее задача, тем интереснее её решать.
И когда ты преодолеваешь эти барьеры, результат становится не просто рабочим сайтом, а примером того, как ограничения могут стимулировать творчество.
Исходной код:
Код
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>BRO Account</title>
<style>
/* ---------- Общие настройки ---------- */
* { box-sizing: border-box; }
body {
margin: 0;
background: #e9ebee;
font-family: Arial, sans-serif;
-webkit-font-smoothing: antialiased;
}
/* ---------- Верхнее меню ---------- */
.header {
width: 100%;
background: #3b5998;
height: 70px;
}
.header-inner {
width: 1035px;
max-width: calc(100% - 40px);
margin: 0 auto;
height: 100%;
position: relative;
top: 10px;
}
.logo {
position: absolute;
top: 20px;
left: 0;
color: #fff;
font-weight: bold;
font-size: 22px;
text-decoration: none;
margin-left: -50px;
}
.logo-box {
background: #fff;
color: #0a66c2;
padding: 2px 6px;
margin-left: 2px;
border-radius: 2px;
}
.nav-cta-wrapper {
position: absolute;
bottom: 25px;
right: 0;
display: flex;
gap: 15px;
}
.nav-cta {
width: 25px;
height: 25px;
background: #fff;
border-radius: 50%;
}
/* ---------- Сетка (контент) ---------- */
.container {
width: 1135px;
max-width: calc(100% - 40px);
margin: 15px auto;
display: grid;
grid-template-columns: 210px 1fr; /* левая колонка фикс, центральная гибкая */
grid-gap: 10px; /* уменьшено на 5px */
align-items: start;
}
.block {
background: #fff; /* все блоки белые */
padding: 15px;
border-radius: 5px;
box-shadow: 0 1px 3px rgba(0,0,0,0.12);
}
/* Левая колонка */
.left-col {
grid-row: span 2;
padding-top: 10px;
}
.left-col h3 { margin: 0 0 6px 0; }
.left-col p { margin: 0 0 12px 0; color:#666; }
.left-col ul { padding-left: 18px; margin: 0; color:#333; }
.left-col ul li { margin: 6px 0; }
/* Центральная колонка */
.center-col {
display: flex;
flex-direction: column;
}
/* Большая обложка */
.cover {
width: 100%;
height: 300px;
margin-bottom: 10px; /* уменьшено на 5px */
overflow: hidden;
border-radius: 2px;
}
.cover img {
width: 100%;
height: 100%;
object-fit: cover;
display:block;
}
/* Маленький центральный блок — уже */
.center-small {
margin-top: -9px;
height: 40px;
display: flex;
align-items: center;
justify-content: left;
padding-left: 10px;
text-align: center;
background: #fff; /* белый фон */
border-top: 0px solid #bfc1c4;
border-left: none;
border-right: none;
border-bottom: none;
border-radius: 0 !important;
margin-bottom: 10px; /* уменьшено на 5px */
}
/* ---------- Нижний ряд ---------- */
.bottom-row {
grid-column: 2;
display: grid;
grid-template-columns: 1fr 320px; /* правые блоки уже на 50px меньше */
grid-template-rows: auto auto;
gap: 10px; /* уменьшено на 5px */
margin-top: 2px; /* уменьшено на 5px */
}
/* Левый блок внизу */
.bottom-left {
grid-column: 1 / 2;
grid-row: 1 / span 2;
min-height: 150px;
background: #fff;
border-radius: 0;
border: 1px solid #d8dce1;
padding: 10px;
}
/* Правые блоки внизу */
.right-small {
display: flex;
align-items: center;
justify-content: left;
min-height: 60px;
width: 100%;
background: #fff; /* белый фон */
border-radius: 0;
border: 1px solid #d8dce1;
padding: 10px;
}
/* Размещение правых блоков */
.bottom-row > .right-small:nth-of-type(1) { grid-column: 2; grid-row: 1; }
.bottom-row > .right-small:nth-of-type(2) { grid-column: 2; grid-row: 2; }
.bottom-row > .right-small:nth-of-type(3) { grid-column: 2; grid-row: 3; }
/* Визуальные улучшения одинаковых блоков */
.bottom-left,
.right-small,
.center-small {
box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}
/* Мелкая адаптивность */
@media (max-width: 900px) {
.container { grid-template-columns: 1fr; width: calc(100% - 30px); }
.left-col { grid-row: auto; padding-top: 12px; }
.bottom-row { grid-column: 1; grid-template-columns: 1fr; grid-template-rows: auto; }
.bottom-left, .right-small { grid-column: 1; grid-row: auto; }
.cover { height: 220px; }
}
</style>
</head>
<body>
<!-- МЕНЮ -->
<div class="header">
<div class="header-inner">
<a href="/" class="logo">Bro <span class="logo-box">Account</span></a>
<div class="nav-cta-wrapper">
<div class="nav-cta"></div>
<div class="nav-cta"></div>
<div class="nav-cta"></div>
<div class="nav-cta"></div>
</div>
</div>
</div>
<!-- КОНТЕНТ -->
<div class="container">
<!-- Левая колонка -->
<div class="left-col block">
<img src="" alt="" style="width:100%; height:200px; background:#000; margin-bottom:15px;">
<h3>Page Name</h3>
<p>@username$POWERED_BY$</p>
<ul>
<li>Home</li>
<li>Posts</li>
<li>Videos</li>
<li>Photos</li>
<li>About</li>
<li>Likes</li>
</ul>
</div>
<!-- Центральная колонка -->
<div class="center-col">
<div class="cover block">
<img src="https://investforesight.com/wp-content/uploads/2021/05/Depositphotos_29628305_l-2015-1024x717-1024x717.jpg" alt="cover">
</div>
<div class="center-small block">
Маленький блок под центральным
</div>
<div class="bottom-row">
<div class="bottom-left block">Блок слева (широкий)</div>
<div class="right-small block">Нижний блок справа 1</div>
<div class="right-small block">Нижний блок справа 2</div>
<div class="right-small block">
Нижний блок справа 3
</div>
</div>
</div>
</div>
</body>
</html>
