Как создать прогрессбар с текстовой надписью?

Как лучше всего сверстать элемент с подписью сверху и тенью? Пожалуйста, подскажите оптимальную структуру тегов и вложенность для этого элемента.
  • 24 августа 2024 г. 15:44
Ответы на вопрос 1
Для создания прогрессбара с текстовой надписью можно воспользоваться HTML, CSS и JavaScript. Вот пример структуры кода для такого элемента:

HTML:
```html
<div class="progress-bar">
  <div class="progress-bar__fill"></div>
  <span class="progress-bar__text">Загрузка...</span>
</div>
```

CSS:
```css
.progress-bar {
  position: relative;
  width: 100%;
  height: 20px;
  background-color: #f0f0f0;
  border-radius: 10px;
}

.progress-bar__fill {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background-color: #007bff;
  border-radius: 10px;
  width: 0;
}

.progress-bar__text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #000;
}
```

JavaScript (для изменения ширины прогрессбара):
```javascript
const progressBarFill = document.querySelector('.progress-bar__fill');
const progress = 50; // Прогресс загрузки в процентах

progressBarFill.style.width = `${progress}%`;
```

Что касается элемента с подписью сверху и тенью, то оптимальная структура тегов и вложенность может выглядеть примерно так:

HTML:
```html
<div class="element-with-shadow">
  <span class="element-with-shadow__text">Текст</span>
</div>
```

CSS:
```css
.element-with-shadow {
  position: relative;
  background-color: #fff;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.element-with-shadow__text {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  background-color: #fff;
}
```

Это лишь примеры структур кода, которые можно доработать и адаптировать под свои нужды.
Похожие вопросы