Создайте веб-страницу для онлайн-системы доставки еды с использованием HTML и CSS
В этой статье мы узнаем, как создать полностью адаптивную веб-страницу для онлайн-системы доставки еды с использованием HTML и CSS.
Используемые файлы:
- index.html
- contact.html
- style.css
index.html: следующий HTML-код описывает структуру веб-страницы. Прежде всего, у него есть тег заголовка для отображения названия компании - «Online FoodShop». Панель навигации содержит вкладки «Главная», «О нас», «Меню» и «Контакты». Панель навигации также состоит из логотипа компании, за которым следует фоновое изображение с некоторыми дополнительными сведениями о «Интернет-магазине FoodShop» и представленными продуктами.
HTML
<!DOCTYPE html> < html lang = "en" > < head > < meta charset = "UTF-8" > < meta name = "viewport" content = "width=device-width, initial-scale=1.0" > < link rel = "stylesheet" href = "style.css" > < link family = Ubuntu +Mono& display = swap " rel = "stylesheet" > </ head > < body > < header > < h1 id = "top" >Online</ h1 > < h1 id = "top1" >FoodShop</ h1 > </ header > < hr > < nav id = "navbar" > < img src = "5.jpeg" > < ul id = "navcontent" > < li >< a href = "#" >Home</ a ></ li > < li >< a href = "#" >About</ a ></ li > < li >< a href = "#" >Menu</ a ></ li > < li >< a href = "contact.html" >ContactUs</ a ></ li > </ ul > </ nav > < div id = "container1" > < div id = "row1" > Welcome to Online FoodShop </ div > < button class = "btn" >ORDER NOW</ button > < div id = "container3" > < div id = "row2" > < button class = "btn" >Prices</ button > </ div > < div id = "row3" > < button class = "btn" >Specials</ button > </ div > </ div > </ div > < hr > < h1 id = "top3" >Featured Products</ h1 > < div id = "container4" > < div id = "row4" > < button class = "btn" >ORDER NOW</ button > </ div > < div id = "row5" > < button class = "btn" >ORDER NOW</ button > </ div > < div id = "row6" > < button class = "btn" >ORDER NOW</ button > </ div > </ div > < footer >Copyright © 2020-2021 OnlineFoodShop. All Rights are reserved</ footer > </ body > </ html > |
contact.html: Следующий HTML-код описывает нам, какое содержимое присутствует на вкладке «ContactUs» на панели навигации. Мы использовали теги ввода для ввода типа «запроса», «имени», «идентификатора электронной почты», «номера телефона» и «объяснения» запроса. Мы также использовали переключатели, чтобы узнать о членстве клиента в «Online FoodShop». На форме также есть кнопки «Отправить» и «Сбросить».
HTML
<!DOCTYPE html> < html lang = "en" > < head > < meta charset = "UTF-8" > < meta name = "viewport" content = "width=device-width, initial-scale=1.0" > < link rel = "stylesheet" href = "style.css" > < title >ContactUs</ title > </ head > < body > < div id = "ContactUs" > < h1 >Contact Us</ h1 > < form action = "#" > < div class = "form-shape" > < label for = "query" > Type of Query </ label > < select name = "myQuery" id = "query" > < option value = "sel" selected> Select </ option > < option value = "ord" > Order related Issues </ option > < option value = "Site" > Site related Issues </ option > < option value = "fed" > Complaint related Issues </ option > < option value = "others" > Others </ option > </ select > </ div > < div class = "form-shape" > < label for = "name" >Name</ label > < input type = "text" name = "myName" id = "name" placeholder = "Enter your Name" > </ div > < div class = "form-shape" > < label for = "email" >Email-Id</ label > < input type = "email" name = "myEmail" id = "email" placeholder = "Enter your email" > </ div > < div class = "form-shape" > < label for = "pho" >Phone Number</ label > < input type = "phone" name = "myPhone" id = "pho" placeholder = "Enter your Phone no" > </ div > < div id = "radio" > Are you a member of OnlneFoodShop: Yes < input type = "radio" name = "eligible" > No < input type = "radio" name = "eligible" > </ div > < div class = "form-shape" > < label for = "message" > Ellaborate your query </ label > < textarea name = "mesg" id = "message" cols = "30" rows = "10" > </ textarea > </ div > < input type = "submit" value = "Submit" > < input type = "reset" value = "Reset" > </ form > </ div > </ body > </ html > |
style.css: это блок таблицы стилей, который дает нам правильный вид веб-страницы.
- Стиль заголовка: он состоит из двух тегов «заголовок». Мы использовали стиль шрифта «Ubuntu» для стилизации заголовка, а также использовали правильные цвета, чтобы текст выглядел привлекательно.
- Стиль панели навигации: он в основном состоит из стиля логотипа и стиля контента. Прежде всего, мы рассмотрели панель навигации как гибкий блок и назначили гибкое направление «столбцу». Мы выровняли изображение логотипа по центру display: block . Мы использовали свойство margin: auto для центрирования изображения. Затем мы рассмотрели содержимое панели навигации как гибкий блок и правильно расположили его.
- Стиль фонового изображения: мы использовали ранее псевдоселекторы для установки соответствующих фоновых изображений.
/ * Сброс CSS * / * { маржа: 0px; отступ: 0 пикселей; } / * Стиль заголовка * / #вершина{ цвет: rgb (245, 10, 10); выравнивание текста: центр; размер шрифта: 46 пикселей; семейство шрифтов: «Ubuntu Mono», моноширинный; } # top1 { выравнивание текста: центр; черный цвет; размер шрифта: 21px; семейство шрифтов: «Ubuntu Mono», моноширинный; } / * Стиль панели навигации * / / * Стиль изображения навигационной панели * / #navbar img { дисплей: блок; ширина: 50 пикселей; высота: 50 пикселей; маржа: авто; нижнее поле: 3 пикселя; } / * Функциональность Navbar * / #navbar { дисплей: гибкий; flex-direction: столбец; цвет фона: серый; высота: 14vh; ширина: 100ввт; семейство шрифтов: «Ubuntu Mono», моноширинный; маржа сверху: 10 пикселей; граница: сплошной черный цвет 2px; радиус границы: 15 пикселей; } / * Функциональность содержимого панели навигации * / #navcontent { дисплей: гибкий; justify-content: center; } / * Стиль содержимого панели навигации * / ul li { стиль списка: нет; маржа: 15 пикселей; радиус границы: 20 пикселей; } ul li a { отступ: 1 пиксель; цвет белый; текстовое оформление: нет; радиус границы: 10 пикселей; } ul li a: hover { цвет фона: красный; радиус границы: 10 пикселей; } / * разработка фонового изображения веб-сайта * / # container1 { положение: относительное; дисплей: гибкий; flex-direction: столбец; align-items: center; ширина: 100ввт; высота: 63vh; } / * Установка фонового изображения с использованием псевдоселектора до * / # container1 :: before { содержание:''; фон: url ("./ 1.jpg") центральная часть / обложка без повторов; ширина: 100ввт; высота: 59vh; позиция: абсолютная; верх: 0px; слева: 0px; семейство шрифтов: «Ubuntu Mono», моноширинный; поле справа: 45 пикселей; font-weight: жирный; z-индекс: -1; непрозрачность: 0,89; граница: сплошной черный цвет 2px; граница-нижний-левый-радиус: 100 пикселей; } # row1 { черный цвет; font-weight: жирный; размер шрифта: 2rem; выравнивание текста: центр; маржа сверху: 35 пикселей; } / * Стиль кнопок * / .btn { маржа сверху: 15 пикселей; граница: сплошной белый цвет 3px; радиус границы: 15 пикселей; цвет фона: желтый; размер шрифта: 20 пикселей; font-weight: жирный; семейство шрифтов: «Ubuntu Mono», моноширинный; } .btn: hover { курсор: указатель; цвет фона: красный; } # container3 { дисплей: гибкий; justify-content: равномерно по пространству; } # row2 { ширина: 24vw; высота: 21vh; box-shadow: 2px 7px 16px 19px; маржа сверху: 51px; нижнее поле: 51px; дисплей: гибкий; justify-content: center; выровнять элементы: гибкий конец; положение: относительное; поле справа: 38 пикселей; радиус границы: 40 пикселей; } # row2 :: before { содержание: ''; фон: url ('2.jpeg') центральная часть / обложка без повторов; позиция: абсолютная; верх: 0px; слева: 0px; ширина: 24vw; высота: 21vh; z-индекс: -1; радиус границы: 40 пикселей; } # row3 { положение: относительное; ширина: 24vw; высота: 21vh; дисплей: гибкий; justify-content: center; выровнять элементы: гибкий конец; box-shadow: 2px 7px 16px 19px; маржа сверху: 51px; нижнее поле: 51px; маржа слева: 38 пикселей; радиус границы: 40 пикселей; } # row3 :: before { содержание: ''; фон: url ('3.jpeg') центральная часть / обложка без повторов; позиция: абсолютная; верх: 0px; слева: 0px; ширина: 24vw; высота: 21vh; z-индекс: -1; радиус границы: 40 пикселей; } # top3 { выравнивание текста: центр; красный цвет; семейство шрифтов: «Ubuntu Mono», моноширинный; } # container4 { дисплей: сетка; столбцы-шаблон-сетки: повтор (автоподгонка, минмакс (350 пикселей, 1 пф)); маржа: 41px; } # row4 { ширина: 29vw; высота: 360 пикселей; граница: сплошной черный 2px; фон: url ('a1.jpeg') центральная часть / обложка без повторов; дисплей: гибкий; justify-content: center; выровнять элементы: гибкий конец; радиус границы: 15 пикселей; } # row5 { ширина: 29vw; высота: 360 пикселей; граница: сплошной черный цвет 2px; фон: url ('a2.jpeg') центральная часть / обложка без повторов; дисплей: гибкий; justify-content: center; выровнять элементы: гибкий конец; радиус границы: 15 пикселей; } # row6 { ширина: 30vw; высота: 360 пикселей; граница: сплошной черный цвет 2px; фон: url ('a3.jpeg') центральная часть / обложка без повторов; дисплей: гибкий; justify-content: center; выровнять элементы: гибкий конец; радиус границы: 15 пикселей; } / * Разработка нижнего колонтитула * / нижний колонтитул { выравнивание текста: центр; } / * Разработка контактов * / #Свяжитесь с нами{ ширина: 100ввт; высота: 100вх; дисплей: гибкий; flex-direction: столбец; align-items: center; цвет фона: серый; } .form-shape input, .form-shape select, .form-shape textarea { ширина: 92%; набивка: 0,5 бэр; } / * Изменение цвета заполнителя * / :: placeholder { цвет: серый; } / * Делаем веб-страницу адаптивной с помощью медиа-вопросов * / @media only screen и (max-width: 1131px) { # row4 { ширина: 42вв; } # row5 { ширина: 45вв; } # row6 { маржа сверху: 20 пикселей; ширина: 90вв; } } Только экран @media и (min-width: 600px) и (max-width: 781px) { # row4 { ширина: 84вв; маржа: авто; маржа слева: 22px; } # row5 { ширина: 84вв; маржа: авто; маржа сверху: 20 пикселей; маржа слева: 22px; } # row6 { ширина: 84вв; маржа: авто; маржа сверху: 20 пикселей; маржа слева: 22px; } } @media only screen и (max-width: 600px) { # row4 { ширина: 78vw; маржа: авто; маржа слева: 3 пикселя; } # row5 { ширина: 78vw; маржа: авто; маржа сверху: 20 пикселей; маржа слева: 3 пикселя; } # row6 { ширина: 78vw; маржа: авто; маржа сверху: 20 пикселей; маржа слева: 3px; } } @media only screen and (min-height: 1000px) { #navbar { высота: 10vh; } # container1 :: before { высота: 39vh; } # container1 { высота: 44vh } }
Выход:
- 15,6-дюймовые ноутбуки:
- iPhone 6/7/8 Plus:
- iPad Pro: