понедельник, 30 сентября 2019 г.

CSS, или вы думали, что HTML был сложным


Чтобы сделать наикрасивейший блог одного HTML недостаточно. Существует язык таблиц стилей, который позволяет прикреплять единый стиль к структурированным документам.
Как раз-таки для подобных целей существует CSS, благодаря которому возможно осуществить единость стиля всей веб-страницы. Каскадные таблицы стилей описывают правила форматирования элементов с помощью свойств и допустимых значений этих свойств. 
Элемент форматирования состоит из двух главных частей - селектора и объявления (в свою очередь объявление состоит из свойства и значения). Селектор - тот объект, который подлежит форматированию, объявление указывает сам вид форматирования (свойство указывает, какой аспект объекта надлежит форматированию (обычно это может быть шрифтом, размером, цветом и т.д), а значение указывает, как форматируется). Чтобы упростить мне вам жизнь, я попытаюсь кратко объяснить разделение CSS стилей в кратком и лаконичном списке определений (Забыл, что это? Тебе сюда!)
Виды таблиц стилей
Внешняя таблица стилей
Является текстовым файлом с расширением .css, которая подключается к веб-странице тегом <link>, который находится внутри тегов <head>...</head> HTML документа. Также существует возможность вставить несколько тегов <link>, указывая с помощью атрибута media их назначение. Важно отметить, что среди всех таблиц стилей их приоритет самый низкий
Например:
<head>
<link rel="style1" href="css/style1.css" media="all">
</head> 
Внутренние стили
Внутренние стили также находятся внутри тегов <head>...</head>, но они определяются внутри тегов <style>...</style>. Их приоритет выше внешней таблицы стилей
Например:
<head>
<style>
h1 { color: bright-red; }
</style>
</head> 
Встроенные стили
Встроенные стили пишутся непосредственно в сам тег, используя атрибут style.
Например:
<span style= color: "#444444"; font-family: "open sans";>
Очень важными во всём CSS являются понятия наследования и каскадирование.
Наследование по названию же не очевидно является механизмом, с помощью которого возможна передача свойств от предков к потомкам. Наследуемые свойства: color, font, letter-spacing, line-height, list-style, text-align, text-indent, text-transform, visibility, white-space и word-spacing. Также существует возможность принудительно присвоить наследуемость любого свойства с помощью атрибута inherit.
Каскадирование - механизм, который который управляет конечным результатом в ситуации, когда к одному элементу применяются несколько CSS стилей. Есть три главных критерия, по которым происходит каскадирование: наличие ключевого слова !important после значения свойства, отбор стилей по их специфичности (выбирается более специфичное свойство), и по порядку подключённых таблиц (выбирается то, что находится ниже HTML документе).


Зная, что такое CSS появляется вопрос - как этим пользоваться? Нужно ли он вообще или одного HTML может хватить?А какие вообще есть опции форматирования в CSS? С помощью CSS можно позиционировать элементы, преобразововать и стилизовать тексты, создавать ссылки, списки, форматировать фоны и обрамлять элементы. Но о каждом подробнее отдельно!

суббота, 28 сентября 2019 г.

Без картинок некрасиво...



Без картинок некрасиво - слоган этого поста. Но появляется вопрос, как их вставить в языке HTML? К этому вопросу есть несколько подходов.
Одна из мох недавних фотографий, эгоцентричная тварь

Добавить изображение не так сложно - можно использовать тег <img>, внутри которого должен находится обязательный атрибут src, который хранит в себе местонахождение изображения, и атрибуты height и width, указывающие на его размеры.
Первое фото, которое я нашёл, загуглив Kirils Gončarovs, мне не нужно повторяться

Изначально я прописал:
<img src="https://www.festivalslampa.lv/public/uploads/speakers/large_20170609125358_96a0f-500x500.png?token=d92513ea604d81e1b4673ad5c0bf7a58" width=320 height=320>

Но считыватель HTML в Blogger автоматически изменил мой тег на:
<a href="https://www.festivalslampa.lv/public/uploads/speakers/large_20170609125358_96a0f-500x500.png?token=d92513ea604d81e1b4673ad5c0bf7a58" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://www.festivalslampa.lv/public/uploads/speakers/large_20170609125358_96a0f-500x500.png?token=d92513ea604d81e1b4673ad5c0bf7a58" width="320" /></a>

Но нужно понимать, что оба варианта допустимы!

Кроме обычных изображений, с помощью языка HTML можно сделать карты-изображения (изображения, у которых есть отдельные зоны для перехода на ссылку). После введения тега <img> нужно использовать теги <map>...</map>. Важной деталью является то, что в теге <img> нужно ввести дополнительный атрибут usemap с названием, которое будет обозначать карту-изображение. И это же название нужно добавить в теге <map> атрибутом name. То есть, это будет выглядеть следующим образом:

<img src="ресурс" usemap="название">
<map name="название">
...
</map>

Между тегами <map>...</map> появляется тег <area>, в котором самыми главными атрибутами являются shape, cords и href. Атрибут shape устанавливает форму поля (circle - круг; poly - многоугольник; rect - прямоугольник; default - вся площадь изображения). Атрибут cords устанавливает координаты поля (для круга - центр окружности и радиус, для прямоугольника - верхний левый и правый нижний угол, для многоугольника - все вершины). А атрибут href является ссылкой, нажав на которую произойдёт переход на другую страницу. Проверим всё на практике!
А теперь посмотрим, как это выглядит в языке HTML:
<a ... usemap="myfirstattempt" />
<map name="myfisrtattempt">
<area href="https://www.instagram.com/uksindus/" shape="rect" cords="0,212 64,0">
</map>
</a>
(Как оказалось, Blogger (или мой темплейт) не разрешает создание подобных ссылок, но теоретически - это правильно!)

Теперь вы знаете основы MsWord HTML - дальше будет изучение комбинации этого языка с другими!

Список покупок в HTML!


Для того, чтобы завершить список всех функций MsWord понять оставшиеся основные функции языка HTML осталось лишь две задачи: как вставить картинку и как сделать списокИ сейчас мы разберёмся, как делаются списки на любой случай жизни!
Начнём с того, какие виды списков существуют? В основном выделяется три вида списков - маркированный, нумерованный и список определений (я мог сделать очередной список, но их и так будет слишком много)

Маркированные списки

Маркированный список - список, в котором отсутствует нумерация и используются вместо этого метки разного типа (точки, галочки и т.д.). Для того, чтобы создать маркированный список нужны теги <ul>...</ul> (UL - Unordered List, здесь тоже есть логика!), внутри которых каждый элемент списка должен находится в тегах <li>...<li>. Например, вот типичный маркированный список:
  • Первый элемент
  • Второй элемент
  • Третий элемент
И вот как выглядит этот список в языке HTML:
<ul>
<span style="color: #444444; font-family: &quot;open sans&quot;;"> (единый стиль текста)
<li>Первый элемент</li>
<li>Второй элемент</li>
<li>Третий элемент</li>
</span>
</ul>

При этом можно делать и многоуровневые маркированные списки (также, как и все остальные подвиды, но здесь проще объяснить основы)
  • Первый элемент
    • Первая подгруппа первого элемента
    • Вторая подгруппа первого элемента
  • Второй элемент
  • Третий элемент
И делается это намного проще, чем может показаться, просто нужно запихнуть написать внутри тегов ещё одну пару тегов <ul>...</ul>:
<ul>
<span style="color: #444444; font-family: &quot;open sans&quot;;">
<li>Первый элемент</li>
<ul>
<li>Первая подгруппа первого элемента</li>
<li>Вторая подгруппа первого элемента</li>
</ul>
<li>Второй элемент</li>
<li>Третий элемент</li>
</span>
</ul>

Нумерованные списки

В отличии от маркированных списков, в нумерованных есть...нумерация! (я знаю, это так неожиданно!) Из-за этого используются другие теги - <ol>...</ol> (OL - Ordered List), которые создают тот самый порядок!
  1. Первый элемент
  2. Второй элемент
  3. Третий элемент
А всегда ли римская нумерация в списке, хотели вы спросить (я хотел, чтобы вы спросили, cпросите, пожалуйста). Ответ - нет! Но это можно сделать атрибутом type внутри тега <ol>. Посмотрим, как это выглядит:
<ol type="I">
<span style="color: #444444; font-family: &quot;open sans&quot;;">
<li>Первый элемент</li>
<li>Второй элемент</li>
<li>Третий элемент</li>
</span>
</ol>

При этом, у атрибута type есть разные подвиды использования, "1" - стандартная десятичная нумерация, "A"/"a" - алфавитная нумерация списка (заглавные/строчные буквы), "I"/"i" - римская нумерация списка (заглавные/строчные буквы). Также, используя атрибут reversed можно сделать так, чтобы список был в обратном порядке (начинаясь с максимального значения). 
Как я говорил до этого, также существуют многоуровневые нумерованные списки:
  1. Первый элемент
    1. Первая подгруппа первого элемента
    2. Вторая подгруппа первого элемента
  2. Второй элемент
    1. Первая подгруппа второго элемента
    2. Вторая подгруппа второго элемента
    3. Третья подгруппа второго элемента
  3. Третий элемент
    1. Первая подгруппа третьего элемента
    2. Вторая подгруппа третьего элемента
<ol>
<span style="color: #444444; font-family: &quot;open sans&quot;;">
<li>Первый элемент</li>
<ol>
<li>Первая подгруппа первого элемента</li>
<li>Вторая подгруппа первого элемента</li>
</ol>
<li>Второй элемент</li>
<ol>
<li>Первая подгруппа второго элемента</li>
<li>Вторая подгруппа второго элемента</li>
<li>Третья подгруппа второго элемента</li>
</ol>
<li>Третий элемент</li>
<ol>
<li>Первая подгруппа третьего элемента</li>
<li>Вторая подгруппа третьего элемента</li>
</ol>
</span>
</ol>

Cписки определений

Отдельным видом списков являются списки определений, в которых отсутствуют какие либо символы для обозначения нумерации, но присутствует точное разделение между уровнями элементов. Они создаются с помощью тегов <dl>...</dl> (DL = Description List), в котором главные элементы обозначаются тегами <dt>...</dt>, а элементы подгрупп <dd>...</dd>. Вот как выглядит список определений:
Первый элемент
Первая подгруппа первого элемента
Вторая подгруппа первого элемента
Второй элемент
Первая подгруппа второго элемента
Вторая подгруппа второго элемента
Третья подгруппа второго элемента
Третий элемент
Первая подгруппа третьего элемента
Вторая подгруппа третьего элемента

И вот как выглядит этот список в языке HTML:
<dl>
<span style="color: #444444; font-family: &quot;open sans&quot;;">
<dd><b>Первый элемент</b></dd>
<dt>Первая подгруппа первого элемента</dt>
<dt>Вторая подгруппа первого элемента</dt>
<dd><b>Второй элемент</b></dd>
<dt>Первая подгруппа второго элемента</dt>
<dt>Вторая подгруппа второго элемента</dt>
<dt>Третья подгруппа второго элемента</dt>
<dd><b>Третий элемент</b></dd>
<dt>Первая подгруппа третьего элемента</dt>
<dt>Вторая подгруппа третьего элемента</dt>
</span>
</dl>

Надеюсь, что я вам помог и теперь мы стали на шаг ближе к освоению функций MsWord языка HTML

понедельник, 23 сентября 2019 г.

Excel в HTML!

Я знаю, что сам Excel - (страшная вещь) чудесная вещь! Конечно же, с помощью HTML нельзя делать безумно сложные расчёты, но красивую таблицу - можно!

Начнём с простого - как создать саму таблицу? Проще некуда! <table>...</table> делает всё за вас! Введя эти теги, вы создаёте строки для работы с вашей будущей таблицей. 

Но, создав таблицу, выделяется только поле - а как сделать рамочки будущему чуду? Нужно добавить свойство border, в котором отмечается ширина границ в пикселях, а свойство width ставит ширину таблицы (Я знаю, что на данном этапе слишком много информации, но пока сложно давать примеры работы. Мы даже не знаем, как сделать видимую строку в таблице!)

Строки таблицы создаются с помощью тегов <tr>...</tr>, их название - <th>...</th>, а само поле <td>...</td>. Попробуем объединить существующие знания!


Каков ваш уровень паники?Ваши ощущения?
5 из 5страх и ужас!
4 из 5не, не надо!
3 из 5лёгкая паника
2 из 5ну, посмотрим
1 из 5ой, несложно
0 из 5ой, запросто

<table 5px="" black="" border:=""> (можно вписать, как <table {border: 5px black;}>, он сам всё поменяет.)
<tbody>
<tr><th>Каков ваш уровень паники?</th><th>Ваши ощущения?</th></tr>
<tr><td>5 из 5</td><td>страх и ужас!</td></tr>
<tr><td>4 из 5</td><td>не, не надо!</td></tr>
<tr><td>3 из 5</td><td>лёгкая паника</td></tr>
<tr><td>2 из 5</td><td>ну, посмотрим</td></tr>
<tr><td>1 из 5</td><td>ой, несложно</td></tr>
<tr><td>0 из 5</td><td>ой, запросто</td></tr>
</tbody></table>

Теги <caption>...</caption> создают название вашей таблице, оно пишется сразу после тега <table>
Безумно полезным являются теги <colgroup>...<colgroup>, благодаря которому можно задать единое форматирование отдельных ячеек. С помощью тега <col> можно сформировать группы столбцов. А теперь добавим это в нашу таблицу!


Оценка уровня паники
Каков ваш уровень паники?Ваши ощущения?
5 из 5страх и ужас!
4 из 5не, не надо!
3 из 5лёгкая паника
2 из 5ну, посмотрим
1 из 5ой, несложно
0 из 5ой, запросто

<caption>Оценка уровня паники</caption>
<colgroup>
<col span="1" style="background: Yellow;"></col>
<col span="2" style="background: Orange;"></col>
</colgroup>

С помощью тегов <tfoot>...</tfoot> можно сделать завершающую строку всей таблицы,
атрибуты colspan и rowspan  объединяют указанное количество колонн и строк.

Теперь вы можете оформить самые красивые таблицы в своих блогах и сайтах! (мои не являются примером красоты)

Теги, которые придадут красоту любому тексту!

Настоящее волбшество - как можно видоизменить текст, используя язык HTML. ( честно, всякие метаданные мне не интересны ) Конечно же, я сам не пользуюсь всеми возможностями ( а, если быть честным, я пользуюсь только сохранением стиля, добавлением жирного и курсивных текстов с помощью тегов ), но их знание поможет сделать всё опрятно и ( далеко не всегда ) со вкусом!


Вот это большой заголовок!

Он стал меньше?

Он становится меньше!

ААААААА, СПАСИТЕ!!!

СКАЖИТЕ РОДИТЕЛЯМ
ЧТО Я...ИХ...ЛЮБИ...
Как видно, комик из меня неудачный ( особенно с тем фактом, что я взял "шутку" с картинки к этому посту ), но я это всё сделал с помощью тегов <h1-6> ... </h1-6>, где от числа зависит размер заглавия ( 1 - главное заглавие, 6 - далеко не самое главное заглавие ).

Также существуют теги для того, чтобы текст придать остроты ( ух, горячо ) или просто добавить ему жирности, курсива, подчёркивание и другие приятности ( хотел сказать прянности, у меня скоро обед, я хочу есть).
Мой любимый тег во всём языке HTML - <b> ... </b> и он делает текст ...жирным! ( никакого шейминга здесь нет, просто русский перевод на жирный комичен, также теги <strong>... </strong> делает текст жирным, но даёт ему значимость).
Теги <em>...</em> и <i>...</i> делают текст курсивным! (<em> при этом придаёт тексту значимость, но какую - я не смог понять)
Теги  <small>...</small> делает текст на одну единицу меньше.
Теги <sub>...</sub> и <sup>...</sup> делают индексы и степени.
А тег  <del>...</del> перечёркивают все ошибки, которые вы допустили в свои 16 лет.

Вот все основы для того, чтобы ваш текст сиял от собственной красоты!

понедельник, 16 сентября 2019 г.

Иерархия тегов в HTML

У каждой HTML страницы есть определённый порядок, в котором пишутся теги.


Первичным и конечным тегом для каждого HTML документа является <html> ... </html> 
Все, что находится за пределами этих тегов, не воспринимается браузером как код HTML и никак им не обрабатывается, поэтому его наличие обязательно.

Теги <head> ... </head> содержит техническую информацию о странице: заголовок, описание, ключевые слова для поисковых машин и кодировку. Введенная в нем информация не отображается в окне браузера, однако содержит данные, которые указывают браузеру, как следует обрабатывать страницу. Внутри него должны находится следующие теги:
  1. Теги <tittle> ... </tittle> - теги текста, который отображается в строке заголовка веб-браузера.
  2. Необязательный тег <meta> определяет ключевые слова для поиска в поисковых системах. <meta name="keywords" lang="en" content="Keywords"> 
  3. Тег <style>, внутри которого задаётся стиль, используемый на странице.
  4. Тег <link>  ( он не требует закрывающего тега ) определяет отношения между документом и внешним ресурсом. 
  5. Теги <script> ... </script> используются для определения сценария на стороне клиента (обычно JavaScript, в дебри которого я не заходил, и, надеюсь, не придётся).
Теги <body> ... </body> содержат в себе всю информацию, которая отображается в веб-браузере. Но об этом я расскажу в следующий раз!

воскресенье, 15 сентября 2019 г.

Что это за теги и почему их нет в инстаграмме?

HTML-теги - основа работы этого языка. Они представляют собой кодовое слово или комбинацию букв и цифр, которые делают определённые команды.


Используем пример с прошлого поста:
<span style="color: #444444; font-family: open sans;">Что такое <b>HTML </b>(страшная абривиатура, я знаю)? Это язык разметки гипертекста (<b>Hypertext Markup Language</b>)</span>

Разберём теги, которые появляются в этой строке:
<span> контент </span> - Контейнер для строчных элементов. Его можно использовать для форматирования отрывков текста, например, выделения цветом отдельных слов, поэтому первый тег написан как <span style=...>, в котором указан цвет текста и шрифт.
<b> контент </b> - тег, который делает текст полужирным

В языке HTML огромное количество тегов, которые можно разделить на разные подгруппы. Их мы обсудим немного позже!


понедельник, 9 сентября 2019 г.

Что такое HTML?

Что такое HTML (страшная абривиатура, я знаю)? Это язык разметки гипертекста (Hypertext Markup Language). Он позволяет пользователю создавать, структурировать и видоизменять разделы, параграфы, заголовки, ссылки и блоки для веб-страниц и приложений.


HTML не является языком программирования, то есть он не имеет возможности создавать динамические функции. Вместо этого он позволяет организовывать и форматировать документы, аналогично Microsoft Word, Notepad или Google Docs. В целом его использование очень логично и просто, но может напугать тех, кто до этого с этим языком, большим количеством абривиатур и специальных команд. 

Основываясь на своём опыте (а, если быть честным, сугубо на своих неудачных попытках и ночах, в которые я заливался кофеином), я расскажу, что за зверем является подобный набор букв и симболов, как:

<div dir="ltr" style="text-align: left;" trbidi="on"> <div style="background-color: white; box-sizing: border-box; margin-bottom: 2rem;">

или

<span style="color: #444444; font-family: open sans;">Что такое <b>HTML </b>(страшная абривиатура, я знаю)? Это язык разметки гипертекста (<b>Hypertext Markup Language</b>)</span>
Надеюсь, что я вас запутаю не так сильно, и вы не слишком сильно запутаетесь!