Добавлен каталог, с рабочим стилем

This commit is contained in:
Vinejar
2025-03-31 03:25:25 +03:00
parent 62854a259f
commit da407d85ae
6 changed files with 184 additions and 11 deletions

View File

@@ -1,10 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
</body>
</html>

View File

@@ -5,6 +5,8 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{% block title %}{{ manga.original_title }}{% endblock %}</title>
<link rel="stylesheet" href="{% static 'css/manga_catalog.css' %}">
<link rel="stylesheet" href="{% static 'css/manga_view.css' %}">
<!-- Меняем размер пикч -->
<style>

View File

@@ -0,0 +1,60 @@
{% extends 'base_manga.html' %}
{% load static %}
{% block title %}Каталог манги{% endblock %}
{% block content %}
<div class="catalog-container">
<h1>Каталог манги</h1>
<div class="manga-list">
{% for manga in manga_list %}
<div class="manga-item">
<!-- Изображение слева -->
<div class="manga-cover">
<img src="{{ manga.img }}"
alt="{{ manga.original_title }}"
onerror="this.onerror=null; this.src='{% static 'images/default_cover.jpg' %}'">
</div>
<!-- Информация справа -->
<div class="manga-info">
<h2>{{ manga.original_title }}</h2>
{% if manga.russian_title %}
<p class="alt-title">{{ manga.russian_title }}</p>
{% endif %}
<div class="meta-data">
<span class="pages">{{ manga.len_manga }} страниц</span>
{% if manga.tags %}
<div class="tags">
{% for tag in manga.tags %}
<span class="tag">{{ tag }}</span>
{% endfor %}
</div>
{% endif %}
</div>
<a href="{% url 'show_manga' manga.id %}" class="read-button">Читать</a>
</div>
</div>
{% endfor %}
</div>
<div class="pagination">
{% if page_obj.has_previous %}
<a href="?page=1">&laquo; первая</a>
<a href="?page={{ page_obj.previous_page_number }}">предыдущая</a>
{% endif %}
<span class="current">
Страница {{ page_obj.number }} из {{ page_obj.paginator.num_pages }}
</span>
{% if page_obj.has_next %}
<a href="?page={{ page_obj.next_page_number }}">следующая</a>
<a href="?page={{ page_obj.paginator.num_pages }}">последняя &raquo;</a>
{% endif %}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,107 @@
/* Базовые стили */
body {
margin: 0;
padding: 0;
background: #f8f9fa;
font-family: Arial, sans-serif;
}
.catalog-container {
max-width: 1200px;
margin: 0 auto;
padding: 20px;
}
/* Карточка манги */
.manga-item {
display: flex;
gap: 20px;
background: white;
border-radius: 8px;
overflow: hidden;
margin-bottom: 20px;
box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}
/* Изображение слева (фиксированная ширина) */
.manga-cover {
width: 200px;
height: 280px;
flex-shrink: 0;
}
.manga-cover img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
/* Информация справа */
.manga-info {
padding: 25px;
flex-grow: 1;
}
.manga-info h2 {
margin: 0 0 8px 0;
color: #333;
font-size: 24px;
}
.alt-title {
color: #666;
margin: 0 0 15px 0;
font-size: 16px;
}
.meta-data {
margin-top: 20px;
}
.pages {
display: block;
color: #888;
margin-bottom: 12px;
}
.tags {
display: flex;
flex-wrap: wrap;
gap: 8px;
}
.tag {
background: #f0f0f0;
padding: 4px 10px;
border-radius: 4px;
font-size: 14px;
color: #555;
}
.read-button {
display: inline-block;
padding: 10px 25px;
background: #4a89dc;
color: white;
text-decoration: none;
border-radius: 5px;
margin-top: 15px;
transition: background 0.3s;
}
.read-button:hover {
background: #3b7dd8;
}
/* Адаптивность */
@media (max-width: 768px) {
.manga-item {
flex-direction: column;
}
.manga-cover {
width: 100%;
height: 300px;
}
}