<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>HTML - DEVNEW.ORG</title>
<link>https://devnew.org/</link>
<atom:link href="https://devnew.org/html/rss.xml" rel="self" type="application/rss+xml" />
<language>ru</language>
<description>HTML - DEVNEW.ORG</description><item>
<title>EspoCRM 9.3.0 顧客および販売管理システム</title>
<guid isPermaLink="true">https://devnew.org/ja/html/html-script/982-espocrm-930-sistema-upravlenija-klientami-i-prodazhami.html</guid>
<link>https://devnew.org/ja/html/html-script/982-espocrm-930-sistema-upravlenija-klientami-i-prodazhami.html</link>
<dc:creator>admin</dc:creator>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
<category>HTMLスクリプト</category>
<description><![CDATA[<p>クライアント、販売、リクエスト、ビジネス プロセスを管理するための最新のオープンソース CRM システム。このシステムを使用すると、顧客や企業に関する情報を一元的に保存し、マネージャーの作業を制御し、基本的な販売プロセスを自動化できます。</p> <p><b>主な機能</b></p> <ul> <li><b>顧客管理</b> - 連絡先、企業、潜在顧客の統合データベース。</li> <li><b>販売と取引</b> - 販売目標到達プロセスのすべての段階で取引を作成および維持します。</li> <li><b>リクエストと異議申し立て</b> - 受信したリクエストを処理し、そのステータスを監視します。</li> <li><b>タスクとカレンダー</b> - 会議、通話、タスク、その他のイベントをスケジュールします。</li> <li><b>やり取りの履歴</b> - クライアントとの通信、通話、会議、その他のアクションを保存します。</li> <li><b>メール</b> - CRM から直接メールを操作します。</li> <li><b>レポート</b> - 売上、マネージャーの活動、主要なビジネス指標の分析。</li> <li><b>自動化</b> - 自動アクションとビジネス プロセスを設定します。</li> <li><b>インターフェースのカスタマイズ</b> - フィールド、エンティティ、ロール、アクセス権を会社のタスクに適応させる機能。</li> <li><b>API と統合</b> - ウェブサイト、オンライン ストア、サードパーティ サービスを接続する機能。</li> <li><b>多言語</b> - さまざまな言語のクライアントと取引する企業に適しています。</li> </ul> <p><b>EspoCRM は何に適していますか</b></p> <p>EspoCRM は、クライアントとの作業を体系化する必要がある<b>営業部門、サービス会社、オンライン ストア、建設会社、IT 企業、その他の組織</b>で使用できます。</p> <p>CRM は、管理者がクライアント、現在のトランザクション、タスク、通信履歴に関する情報を確認できる単一システムで、異種のテーブルやレコードを置き換えるのに役立ちます。</p> <p><b>利点</b></p> <p><b>EspoCRM 9.3.0</b> は独自のサーバーにインストールできるため、企業はデータとシステム設定を独立して制御できます。オープンソース コードと API のおかげで、CRM を特定のビジネス プロセスに適応させ、既存のウェブサイトや他のサービスと統合できます。</p> <p><b>EspoCRM は、クライアント、販売、ビジネス プロセスを 1 つのシステムで集中管理するためのツールです。</b></p>]]></description>
</item><item>
<title>オンライン シネマ Web サイト - DLE 16.1 で v4.2 を構築</title>
<guid isPermaLink="true">https://devnew.org/ja/html/html-script/1231-sajt-kino-onlajn-sborka-v42-na-dle-161.html</guid>
<link>https://devnew.org/ja/html/html-script/1231-sajt-kino-onlajn-sborka-v42-na-dle-161.html</link>
<dc:creator>admin</dc:creator>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
<category>HTMLスクリプト</category>
<description><![CDATA[<p>インストールと初期設定の手順はアーカイブ内にあります。</p> <p>映画サイトを構築する場合、スクリプトは映画やテレビ シリーズを含むサイト用に完全に構成されています。</p> <p>必要なモジュールがすべてインストールされ、カテゴリ、追加フィールド、その他の点が指定されています。その結果、オンラインで視聴でき、トレント経由で映画をダウンロードできる機能を備えた本格的な映画ウェブサイトが誕生しました。</p> <p>デモ用のデモ テンプレートといくつかの記事をセットアップします。管理パネルで自分用の追加設定を行うことができます。</p> <p>アーカイブ内の説明。</p>]]></description>
</item><item>
<title>レッスン 12. CSS スプライト、サービス、スプライト ジェネレーターとは何ですか</title>
<guid isPermaLink="true">https://devnew.org/ja/html/learn-html/1240-urok-12-chto-takoj-css-sprajty-servisy-i-generatory-sprajtov.html</guid>
<link>https://devnew.org/ja/html/learn-html/1240-urok-12-chto-takoj-css-sprajty-servisy-i-generatory-sprajtov.html</link>
<dc:creator>admin</dc:creator>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
<category>HTML チュートリアル</category>
<description><![CDATA[<p>CSS スプライトのような興味深いツールを詳しく見てみましょう。経験豊富なレイアウト デザイナーや Web マスターの多くは、このシンプルなテクニックの利点をよく知っています。スプライトを使用する利点は、個々の画像の数が減ることでページの読み込み時間が大幅に短縮されることです。最新のレイアウト標準では、小さなアイコンとテーマ画像を特別な画像コレクションにグループ化するのが通例です。簡単に言えば、スプライトとは、テーマの小さな画像のセットを含む画像です。</p> <p>このようにして、小さな画像をグループ化すると、サーバーへのリクエストの数が減ります。私たちのページには、30 個の小さな画像ではなく、1 つの画像だけが読み込まれます。これにより、読み込み速度が大幅に向上します。</p> <p><span>一言で言えば、CSS スプライトは、ウェブサイトで使用するために複数の画像を 1 つのファイルに結合してパフォーマンスを大幅に向上させるツールです。 </span>スプライトの概念は、小さな画像を扱うのではなく、大きな画像を作成することを考えると、少し誤解を招きやすいように思えるかもしれません。</p> <p><span>要約すると、「スプライト」という用語は、ビデオ ゲームで最もよく使用されるコンピュータ グラフィックス技術に由来しています。 このアイデアは、画像をメモリに保存し、その画像の一部だけを表示することであり、新しい画像を取得するよりも高速です。 <br></span></p> <p><span>CSS スプライトは、ほぼ正確な理論です。画像を 1 回取得し、背景を移動して、その一部のみを表示します。 これにより、複数の画像を取得する際のオーバーヘッドが軽減されます。</span></p> <p><span>インターネット上には、スプライトを作成するためのサービスが膨大にあります。検索エンジンに適切なクエリを入力するだけです。検索するのが面倒な場合は、このトピックに関する人気のあるリソースをいくつか紹介します。 <a href="https://www.toptal.com/developers/css/sprite-generator" rel="external noopener">トップタル スプライト ジェネレーター</a>、 <a href="https://ru.inettools.net/image/generator-css-spraytov" rel="external noopener">inettools スプライト ジェネレーター</a>。テンプレートを分割し、小さなアイコンをすべて選択し、そこからスプライトを作成したとします。次に何をするのでしょうか?<br><br></span></p> <h2>スプライトからアイコンを使用する方法</h2> <p>次に、スプライトを操作する手順を見てみましょう。</p> <ul> <li>一般的なクラスを作成しましょう。たとえば、.sprite と呼びます。その背景は、sprite.png ジェネレータを使用して作成されたこの画像です。同じクラスに高さと幅を設定します。スプライト アイコンが同じサイズの場合、これがスプライト アイコンの高さと幅になります。 </li> <li>このアイコンを使用する必要があるブロックの場合は、CSS プロパティ <em><strong>background-position</strong></em> を使用して背景オフセットを希望の量に設定します。 <a href="https://devnew.org/learn-html/652-urok-11-fon-sajta-s-pomoschju-css-svojstvo-background.html">背景について詳しくは、前の記事をご覧ください</a>。</li> </ul> <p>例:</p> <pre><code class="hljs css"><span class="hljs-class">.sprite</span> <span class="hljs-rules">{</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">幅</span>:<span class="hljs-value"> <span class="hljs-number">30px</span></span></span>;</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">高さ</span>:<span class="hljs-value"> <span class="hljs-number">30px</span></span></span>;</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">背景</span>:<span class="hljs-value"> <span class="hljs-function">url</span>(<span class="hljs-string">"/assets/img/sprite.png"</span>)</span></span>;{{HTML 85}}<br><span class="hljs-rules"><span class="hljs-rule">}</span></span><br><span class="hljs-class">.sprite-icon1</span> <span class="hljs-rules">{</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">背景位置</span>:<span class="hljs-value"> <span class="hljs-number">0</span> -<span class="hljs-number">80px</span></span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule">}</span></span></code></pre> <p><span><b><span style="color:rgb(53,152,219);"><br>お疲れ様でした</span></b></span></p>]]></description>
</item><item>
<title>レッスン 11. CSS を使用した Web サイトの背景。背景プロパティ</title>
<guid isPermaLink="true">https://devnew.org/ja/html/learn-html/1249-urok-11-fon-sajta-s-pomoschju-css-svojstvo-background.html</guid>
<link>https://devnew.org/ja/html/learn-html/1249-urok-11-fon-sajta-s-pomoschju-css-svojstvo-background.html</link>
<dc:creator>admin</dc:creator>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
<category>HTML チュートリアル</category>
<description><![CDATA[<div class="entry-content"> <div class="entry-content"> <p>Чтобы придать любой html-странице свой стиль и индивидуальность, активно используют фоны для элементов и страницы в целом. За этот момент оформления отвечает целый раздел css-свойства, которые начинаются со слова <strong>background</strong>.</p> <h2>Как задать цвет и изображение фона сайта</h2> <p>Для задания цвета фона используют свойство <strong><em>background-color</em></strong>, оно принимает значения в шестнадцатеричном формате цвета, в формате RGB, задание цвета при помощи ключевых слов.</p> <p>Чтобы использовать в качестве фона сайта изображения, применяют свойство <strong><em>background-image</em></strong>, где указывают ссылку на файл. Можно использовать одновременно и вариант с цветом фона, и с изображением. Тогда изображение накладывается поверх фона определенного цвета.</p> <p>Теперь поговорим о том, как регулировать повторение фонового изображения, как растянуть его на весь экран и т.д. Свойство, которое отвечает за повтор фона, называется <em><strong>background-repeat</strong></em>. Оно принимает четыре значения. В качестве значения по умолчанию принимается repeat (повторять по вертикали и горизонтали). Три других значения:</p> <ul> <li>repeat-x - повторяет изображение по горизонтали</li> <li>repeat-y - повторяет изображение по вертикали</li> <li>no-repeat - не повторяет изображение совсем</li> </ul> <p>Для задания размера фонового изображения сайта используют свойство <strong><em>background-size</em></strong>, оно принимает значения в процентах, пикселях и слово auto. Имеет два значения через пробел. Первое значение отвечает за растяжение по горизонтали, второе по вертикали. Если первое значение задано (например, 100%), а второе значение выставлено auto, то фон по горизонтали растянется на весь размер блока, а по вертикали подгоняет высоту для данной ширины. Есть еще два значения для этого свойства (cover и contain). Cover изменяет размеры изображения так, чтобы блок был полностью закрыт картинкой, а contain так, чтобы картинка поместилась в блок целиком. Cover и contain задаются по одному, через пробел уже ничего писать не нужно.</p> <p>Пример. Зададим цвет фона, его изображение без повтора и растянем его по ширине и высоте:</p> <pre><code class="hljs css"><span class="hljs-class">.block</span> <span class="hljs-rules">{</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">background-color</span>:<span class="hljs-value"> <span class="hljs-hexcolor">#eee</span></span></span>;</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">background-image</span>:<span class="hljs-value"> <span class="hljs-function">url</span>(<span class="hljs-string">"/assets/img/image.png"</span>)</span></span>;</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">background-repeat</span>:<span class="hljs-value"> no-repeat</span></span>;</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">background-size</span>:<span class="hljs-value"> <span class="hljs-number">100%</span> <span class="hljs-number">100%</span></span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule">}</span></span></code></pre> <h3>Положение фонового изображения, background-position</h3> <p>Немного подробнее остановимся на работе с фоновым изображением, которое не нужно повторять. Для регулирования нахождения этого изображения внутри блока, которому мы задаем фон, используется CSS-свойство <em><strong>background-position</strong></em>. Это свойство принимает два значения через пробел. Первое определяет положение по оси x (горизонтали), второе по оси y (вертикали).</p> <p>Единицы измерения этих двух величин проценты и пиксели. Еще они принимают значения top, bottom, left, right, center. Значения для оси x, естественно, left, right, center. Значения для оси y - top, bottom, center. Единицы измерения, значения, пиксели и проценты можно комбинировать между собой в произвольном формате. В примере ниже зададим позиции для фонового изображения. В первом случае будет изображение по центру в процентах. Во втором случае изображение в правом нижнем углу блока. В третьем случает изображение сдвинуто на 50 пикселей слева и на 100 пикселей сверху. Пример:</p> <pre><code class="hljs css"><span class="hljs-class">.block1</span> <span class="hljs-rules">{<span class="hljs-rule"><span class="hljs-attribute">background-position</span>:<span class="hljs-value"> <span class="hljs-number">50%</span> <span class="hljs-number">50%</span></span></span>;<span class="hljs-rule">}</span></span><br><span class="hljs-class">.block2</span> <span class="hljs-rules">{<span class="hljs-rule"><span class="hljs-attribute">background-position</span>:<span class="hljs-value"> right bottom</span></span>;<span class="hljs-rule">}</span></span><br><span class="hljs-class">.block3</span> <span class="hljs-rules">{<span class="hljs-rule"><span class="hljs-attribute">background-position</span>:<span class="hljs-value"> <span class="hljs-number">50px</span> <span class="hljs-number">100px</span></span></span>;<span class="hljs-rule">}</span></span></code></pre> <h3>Фиксим фонового изображения, background-attachment</h3> <p>Иногда для создания визуальных эффектов нужно, чтобы фон при прокрутки не уезжал вместе с просмотренной частью страницы, а оставался на месте. Это будет создавать интересный эффект параллакса.</p> <p>Для фиксации фона используется css-свойство<em><strong> background-attachement</strong></em>. Оно принимает два значения, scroll - значение по умолчанию, прокрутка вместе со всем остальным содержимым, fixed - фон остается на месте при прокрутке.</p> <h2>CSS-свойство background</h2> <p>Чтобы обобщить все вышеперечисленные громоздкие конструкции в CSS есть свойства для их объединения, <em><strong>background</strong></em>. Оно имеет следующую структуру <em><strong>background: background-color background-image background-repeat background-position background-attachement; </strong></em>Все значения этих свойств перечисляются через пробел. Если заданы не все свойства, то они имеют значения по умолчанию. Например:</p> <pre><code class="hljs css"><span class="hljs-class">.block</span> <span class="hljs-rules">{</span><br><span class="hljs-rules"><span class="hljs-rule"><span class="hljs-attribute">background</span>:<span class="hljs-value"> <span class="hljs-hexcolor">#eee</span> <span class="hljs-function">url</span>(<span class="hljs-string">"/assets/img/image.png"</span>) center center</span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule">}</span></span></code></pre> </div> </div>]]></description>
</item><item>
<title>レッスン 10. テキストの書式設定。テキストのレイアウトについて知っておくべきこと</title>
<guid isPermaLink="true">https://devnew.org/ja/html/learn-html/1258-urok-10-oformlenie-teksta-chto-nuzhno-znat-o-verstke-teksta.html</guid>
<link>https://devnew.org/ja/html/learn-html/1258-urok-10-oformlenie-teksta-chto-nuzhno-znat-o-verstke-teksta.html</link>
<dc:creator>admin</dc:creator>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
<category>HTML チュートリアル</category>
<description><![CDATA[<p>С <a href="https://devnew.org/learn-html/644-urok-3-razmetka-teksta-html-abzacy-spiski-zagolovki.html">разметкой текста</a> уже познакомились в одной из статей курса. Из этой статьи знаем, какие основные теги используются для определения контента. Следующий этап заключается в знакомстве с правилами оформления текста через стили css. Помимо базовых тегов, абзацей, заколовкой, списков часто используется тег &lt;span&gt;. По сути этот тег не несет смысловой нагрузки, он строчный, является частью текста. Используется для того, чтобы стилистически выделить несколько слов или строк. <br><b>Например :</b></p> <pre><code class="hljs xml"><span class="hljs-tag">&lt;<span class="hljs-title">span</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"red-text"</span>&gt;</span>...<span class="hljs-tag">&lt;/<span class="hljs-title">span</span>&gt;</span><br></code></pre> <h2>Верстка текста, работа со шрифтами</h2> <p>Для задания размера шрифта, его стиля, жирности, вида используются следующие CSS свойства:</p> <ul> <li><strong>font-size</strong>. Размер шрифта, принимает значения в абсолютных и относительных единицах. К абсолютным относятся пиксели (font-size : 14px;) и пункты (font-size : 15pt;). К относительным проценты (font-size : 70%;) и em. EM обычно примерно равен длине буквы М в шрифте данного вида.</li> <li><strong>font-weight</strong>. Жирность шрифта, его начертание. Принимает как целочисленные значения (100,200,300..900), отражающие степень жирности, так и два стандартных <em>normal</em> и <em>bold</em>. Как правило, большая часть браузеров не различает степени жирности, отражает только два последних варианта начертания.</li> <li><strong>font-style</strong>. Свойство необходимое для задания нормального начертания (<em>normal</em>) или курсива (<em>italic</em>).</li> <li><strong>font-family</strong>. Используется для задания семейства шрифта или задания названия конкретно используемого шрифта, который объявлен в начеле или является стандартным. serif — без засечек, <span>sans-serif — с засечками. В примере указаны сначала название шрифта, потом его альтернативные варианты через запятую. Если первый шрифт не будет найден, применятся следующие за ним</span>: <pre><code class="hljs css"><span class="hljs-tag">body</span> <span class="hljs-rules">{ <span class="hljs-rule"><span class="hljs-attribute">font-family</span>:<span class="hljs-value"> <span class="hljs-string">"PT Sans"</span>, <span class="hljs-string">"Arial"</span>, serif</span></span>; <span class="hljs-rule">}</span></span></code></pre> </li> </ul> <h2><br>Верстка текста, цвет, высота строки, подчеркивание</h2> <p>Про стилистику шрифтов немного разобрались, теперь перейдем к не менее важным свойствам текста. Нас интересует css-свойства, отвещающие за цвет, оформление, пробелы, высота строки.</p> <ul> <li><strong>color</strong>. Цвет текста, задается с помощью RGB-формата (<em>color : rgb(255, 0, 0);</em>), шестнадцатеричного кода, который можно посмотреть в фотошопе для любого цвета (<em>color : #000;</em>) и с помощью ключевых слов (<em>color : red; color : blue;</em>). Чаще всего используют шестандцатириный код.</li> <li><strong>text-decoration</strong>. Стандартное свойство при работе со ссылками, все ссылки по-умоланию подчеркнуты. Чтобы отменить подчеркивание или задать свой вариант в качестве значений свойства принимаются. <em>text-decoration : none;</em> (отменяем все изменения),<em> text-decoration : underline; </em>(нижнее подчеркивание), <em>text-decoration : overline;</em> (верхнее подчеркивание), <em>text-decoration : line-through;</em> (зачеркнутый текст)</li> <li><strong>text-transform</strong>. Работа с регистром в строке. иногда необходимо стилистически изменить регистр текст. Часто это необходимо делать при работе с меню или нестандартным текстом. <em>text-transform : </em><span><em>lowercase;</em> (делает все символы строными), <em>text-transform : </em></span><span><em>uppercase;</em> (делает все символы прописными), text-<em>transform : </em></span><span><em>capitalize;</em> (начинает каждое слово с прописной), <em>text-transform : none;</em> (отменяет все значения)</span></li> <li><strong>white-space</strong>. Управление пробелами в тексте, принимает следующие значения. <em>nowrap </em>— текст без переносов; <em>pre</em> — как в исходном коде; <em>pre-wrap</em> — как pre, только появляются переносы, если никак не умещается в блок текст;<em> normal</em> — стандартное отображение.</li> <li><strong>text-align</strong>. Выравнивание текста внутри родительского контейнера.<em> left</em> — по левому краю; <em>right </em>— по правому краю; <em>center</em> — по центру; <em>justify</em> — по ширине.</li> <li><strong>line-height</strong>. Используется для регулирование межстрочных интервалов и, очевидно, высоты строки. Значения задаются в пикселях (line-height : 22px;), процентах (line-heigh t: 100%;), множителях, ключевых словах (line-height : normal;).<br> <div class="cont clearfix pages"> <div id="dle-content"> <div class="static-page"></div> </div> </div> </li> </ul>]]></description>
</item><item>
<title>レッスン 9. CSS レッスン。 CSS プロパティの継承、カスケード</title>
<guid isPermaLink="true">https://devnew.org/ja/html/learn-html/1267-urok-9-uroki-css-nasledovanie-css-svojstv-kaskadirovanie.html</guid>
<link>https://devnew.org/ja/html/learn-html/1267-urok-9-uroki-css-nasledovanie-css-svojstv-kaskadirovanie.html</link>
<dc:creator>admin</dc:creator>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
<category>HTML チュートリアル</category>
<description><![CDATA[<div class="entry-content"> <div class="entry-content"> <p>В предыдущих уроках кратко упоминали, что при знакомстве с таблицей стилей CSS, правилами, свойствами и селекторами стоит уяснить для себя правила наследования стилей. Мы знаем, что весь HTML- документ условно можно представить в виде иерархии, где одни элементы содержат в себе другие. Между элементами существуют различные связи. Они могут быть соседними, а могу иметь свзять родитель-дочерний элемент. У каждого элемента только один непосредственный родитель, это тот, который содержит его явно. Родителя нет только у корневого элемента, в Html-файлах это тег <em>&lt;html&gt;</em>.</p> <p>Свойства, которые мы прописываем для родительского элемента передаются всем его потомкам различных уровней вложенности. Чтобы переопределить эти свойства необходимо прописать их дочернему элементу. Такие стили будут иметь больший приоритет и перебьют наследуемые свойства. Наследуются, естественно, не все стили. Например, стили связанные со шрифтами. Этот механизм необходим для сокращения таблицы стилей, ведь это очень удобно, хотя есть и существенные минусы. Когда css-файл разрастается, очень трудно отследить какой родительский элемент задает некоторые стили, от этого может возникнуть путаница.</p> <h2>Какие css-свойства (стили) наследуются</h2> <p><strong><em>font-size, font-family, font-style, font-weight, color, text-align, text-transform, text-indent, line-height, letter-spacing, word-spacing, white-space, direction и т. д.</em></strong></p> <p>Наследуются еще некоторые другие свойства, но применяют такое наследование гораздо реже. Почему же в основном этому механизму подвержены стили работы с текстом. Дело в том, что у большинства сайтов есть общая типографическая концепция. Цвет текста, размер шрифта, вид шрифта, поэтому здраво задавать такие стили для документа в целом или для конкретных блоков.</p> <p>Соответственно большинство свойств, отвещающих за внешний вид сайта не наследуются. Было бы странно, если задавая фон или рамку одного элемента, мы получали такие же у всех потомков. Поэтому механизм наследования имеет продуманную суть. </p> <p>В некоторых ситуациях имеются исключения. Например, мы хотим все же получить значение для свойства от родительского элемента. Тогда можно использовать конструкцию <strong><em>свойство : inherit;</em></strong><em> </em>Для<em> </em>любого свойства<em> </em>будет принято значение от родителя. Этот механизм называется принудительное наследование.</p> <h2>Каскадирование CSS, каскадные таблицы стилей</h2> <p>Мы уже знаем о расшифровке аббревиатуры CSS, с таблицей стилей все в принципе понятно, а что же такое каскадная? Каскадирование - один из базовых механизмов при работе с css-правилами. Для одного и того же элемента может быть задано множество пересекающихся стилей. Стили могут задаваться через атрибут style, через селектор тега, класса, идентификатора, могут наследоваться от родителя и т.д. Вопрос в том, какие же стили применяться к элементу в конечном итоге, давайте разбираться.</p> <p>На выбор стилей для элемента влияют несколько факторов. Приоритет, специфичность, порядок кода. Специфичность простым языком можно описать так, чем конкретнее (точнее) задан селектор, тем он специфичнее. Т.е. чем меньше выбираем элементов для данного правила, тем специфичность больше.</p> <p>Теперь на примерах:</p> <ul> <li>Если задаем стили для элемента по одинаковому селектору, по тегу, по классу, например, то применяются те свойства, которые стоят ниже в css-файле. Ведь специфичность и приоритет в этом случае будут одинаковы. </li> <li>Если одно правило в качестве селектора использует класс, а другое тег с уточняющим классом, то применяются стили второго правила, т.к. более специфичный. Например, для <strong><em>&lt;p class="first sec"&gt;</em> </strong>зададим правила с использованием селекторов<strong> <em>.first</em> </strong>и <em><strong>p.second</strong>. </em>В конечном итоге приоритетными будут свойства второго селектора.</li> <li>Если в качестве селектора использовать идентификатор (id), то такие правила будут приоритетнее. Это происходит потому что элемент с данным Id единственный на страницу, значит специфичность его больше. </li> <li>Еще более приоритетны свойства записанные через атрибут style</li> <li>Чтобы переопределить стили через атрибут style можно использовать ключевое слово <strong><em>!important</em></strong> применимое к любому свойства. Оно переопределяет все. Однако злоупотреблять им не стоит, использовать в крайних случаях</li> </ul> <h2>Перекрестное наследование стилей</h2> <p>Далее расскажем про еще один популярный и удобный прием в задании css-свойсв. У большинства сайтов есть похожие друг на друга элементы, которые отличаются лишь незначительно. Одним из таких популярных html-элементов являются кнопки. Как правило, они имеют одинаковые отступы, размеры, закругления, тени, цвет текста и т.д. Здесь и удобно применять перекрестное наследование стилей</p> <ul> <li>Вынесем общие стили в основной класс .button</li> <li>Зададим вспомогательные стили еще в нескольких классах. Например, .button-red и .button-blue</li> <li>Пропишем у всех сходных элементов базовый класс, а следом при необходимости один или несколько вспомогательных</li> </ul> <pre><code class="hljs xml"><span class="hljs-tag">&lt;<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"catalog"</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"catalog-item"</span>&gt;</span><br> ...<br> <span class="hljs-tag">&lt;<span class="hljs-title">a</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"button button-red"</span>&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-title">a</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">div</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"catalog-item"</span>&gt;</span> <br> ...<br> <span class="hljs-tag">&lt;<span class="hljs-title">a</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"button button-blue"</span>&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-title">a</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">div</span>&gt;</span><br><span class="hljs-tag">&lt;/<span class="hljs-title">div</span>&gt;</span></code></pre> <p>Таким образом избавляемся от лишнего кода, упрощаем себе жизнь.</p> </div> </div>]]></description>
</item><item>
<title>レッスン 8. CSS セレクター。 CSSルールの設定</title>
<guid isPermaLink="true">https://devnew.org/ja/html/learn-html/1276-urok-8-selektory-css-zadaem-css-pravila.html</guid>
<link>https://devnew.org/ja/html/learn-html/1276-urok-8-selektory-css-zadaem-css-pravila.html</link>
<dc:creator>admin</dc:creator>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
<category>HTML チュートリアル</category>
<description><![CDATA[<div class="entry-content"> <div class="entry-content"> <p>Без селекторов задавать стили для элементов html-страницы очень сложно. Необходимо было бы прописывать стили с помощью атрибута style у каждого элемента, это нерационально и долго. Существование селекторов и файла CSS существенно упрощает задачу. В этом css-уроке разберемся с тем, какие же существуют селекторы. </p> <h2>Селекторы по тегу, классу и id</h2> <p>Этот тип селекторов указывает на все элементы страницы с определенным тегом. Чтобы прописать стили по тегу, необходимо взять название тега и в фигурных свойствах отметить все свойства для них. Что касается селектора по классу, то необходимо указать сначала название класс, а потом в фигурных скобках css-свойства для него. Для селектора по id ситуация идентичная.</p> <p>Например, пропишем свойства для всех абзацей на странице и для последнего из абзацей по классу перебьем значение отступа снизу:</p> <pre><code class="hljs xml"><span class="hljs-tag">&lt;<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"content"</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-title">p</span>&gt;</span>...<span class="hljs-tag">&lt;/<span class="hljs-title">p</span>&gt;</span> ... <span class="hljs-tag">&lt;<span class="hljs-title">p</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"last"</span>&gt;</span>...<span class="hljs-tag">&lt;/<span class="hljs-title">p</span>&gt;</span> <span class="hljs-tag">&lt;/<span class="hljs-title">div</span>&gt;</span></code></pre> <p><br></p> <pre><code class="hljs css"><span class="hljs-tag">p</span> <span class="hljs-rules">{ <span class="hljs-rule"><span class="hljs-attribute">margin-bottom</span>:<span class="hljs-value"> <span class="hljs-number">10px</span></span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule"><span class="hljs-attribute">color</span>:<span class="hljs-value"> <span class="hljs-hexcolor">#000</span></span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule"><span class="hljs-attribute">font-size</span>:<span class="hljs-value"> <span class="hljs-number">14px</span></span></span>; <span class="hljs-rule">}</span></span><br><span class="hljs-class">.last</span> <span class="hljs-rules">{</span><br><span class="hljs-rules"><span class="hljs-rule"><span class="hljs-attribute">margin-bottom</span>:<span class="hljs-value"> <span class="hljs-number">25px</span></span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule">}</span></span><br></code></pre> <h2>Вложенные и соседние селекторы</h2> <p>Далее поговорим о вариациях, как можно проще задавать стили для различных элементов, не прибегая к использованию классов. Часто мы должны задать стили только для вложенных элементов. Допустим определенные стили ТОЛЬКО у ссылок меню или ТОЛЬКО у абзацей определенного блока, например, блока с контентом. Для этого используется понятие вложенных селекторов. Необходимо слева направо задать порядок вложенности.</p> <p>Например, добавим стили для абзацей контентной части. В этом случае стили, которые заданы у вложенного в блок абзаца перебьют общие стили для всех абзацей. Таким образом мы не плодим лишние классы, а обходимся компактной конструкцией.</p> <pre><code class="hljs xml"><span class="hljs-tag">&lt;<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"content"</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-title">p</span>&gt;</span>...<span class="hljs-tag">&lt;/<span class="hljs-title">p</span>&gt;</span> ... <span class="hljs-tag">&lt;<span class="hljs-title">p</span>&gt;</span>...<span class="hljs-tag">&lt;/<span class="hljs-title">p</span>&gt;</span> <span class="hljs-tag">&lt;/<span class="hljs-title">div</span>&gt;</span></code></pre> <p><br></p> <pre><code class="hljs css"><span class="hljs-tag">p</span> <span class="hljs-rules">{ <span class="hljs-rule"><span class="hljs-attribute">margin-bottom</span>:<span class="hljs-value"> <span class="hljs-number">10px</span></span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule"><span class="hljs-attribute">color</span>:<span class="hljs-value"> <span class="hljs-hexcolor">#000</span></span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule"><span class="hljs-attribute">font-size</span>:<span class="hljs-value"> <span class="hljs-number">14px</span></span></span>; <span class="hljs-rule">}</span></span><br><span class="hljs-class">.content</span> <span class="hljs-tag">p</span> <span class="hljs-rules">{</span><br><span class="hljs-rules"><span class="hljs-rule"><span class="hljs-attribute">color</span>:<span class="hljs-value"> <span class="hljs-hexcolor">#eee</span></span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule"><span class="hljs-attribute">font-size</span>:<span class="hljs-value"> <span class="hljs-number">16px</span></span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule"><span class="hljs-attribute">matgin-bottom</span>:<span class="hljs-value"> <span class="hljs-number">15px</span></span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule">}</span></span></code></pre> <p>Еще одна полезная фишка для удобства - это использование соседних селекторов. Слева направо через знак плюс прописываем два селектора. Стили, указанные в фигурных скобках, применяются к последнему селектору только в случае, если он стоит после первого.</p> <p>Например, для селектора по классу .sec применется отступ сверху, если он стоит после элемента с классом .first:</p> <pre><code class="hljs xml"><span class="hljs-tag">&lt;<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"content"</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-title">p</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"first"</span>&gt;</span>...<span class="hljs-tag">&lt;/<span class="hljs-title">p</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-title">p</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"sec"</span>&gt;</span>...<span class="hljs-tag">&lt;/<span class="hljs-title">p</span>&gt;</span> <span class="hljs-tag">&lt;/<span class="hljs-title">div</span>&gt;</span></code></pre> <p><br></p> <pre><code class="hljs css"><span class="hljs-class">.first</span> + <span class="hljs-class">.sec</span> <span class="hljs-rules">{ <span class="hljs-rule"><span class="hljs-attribute">margin-top</span>:<span class="hljs-value"> <span class="hljs-number">20px</span></span></span>; <span class="hljs-rule">}</span></span><br></code></pre> <p>Вложенные и соседние селекторы можно комбинировать. Если зададим в примере перед конструкцией <em>.first + .sec</em> класс <em>.content</em>, то свойства применяются для второго класса в случае, если он идет после первого и они оба лежат в блоке с классом <em>.content</em>.</p> <h2>Стили для дочерних селекторов. Чем дочерние элементы отличаются от потомков</h2> <p>С вложенностью селекторов мы познакомилимь. Понятно, что сначала идет родительский элемент (предок), а вложенные в него элементы являются потомками. При чем не важно, какой у них уровень вложенности, все равно для первого элемента они будут потомками. Чтобы задать стили для первого уровня вложенности, т.е. для непосредственного потомка, используют понятие дочернего селектора. Для этого используют символ <em>&gt;, </em>он указывает на дочерний селектор.</p> <p>В данном примере стили применяются только для элемента <em>span</em> вложенного непосредственно в <em>.content,</em> а для <em>span</em> внутри абзаца не применяются.</p> <pre><code class="hljs xml"><span class="hljs-tag">&lt;<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"content"</span>&gt;</span> <br> <span class="hljs-tag">&lt;<span class="hljs-title">span</span>&gt;</span>...<span class="hljs-tag">&lt;/<span class="hljs-title">span</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">p</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"first"</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">span</span>&gt;</span>...<span class="hljs-tag">&lt;<span class="hljs-title">span</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">p</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-title">p</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"sec"</span>&gt;</span>...<span class="hljs-tag">&lt;/<span class="hljs-title">p</span>&gt;</span> <span class="hljs-tag">&lt;/<span class="hljs-title">div</span>&gt;</span><br></code></pre> <p><br></p> <pre><code class="hljs ruby"><span class="hljs-prompt">.content &gt;</span> span {<br>...<br>}</code></pre> <h2>Псевдоклассы</h2> <p>Еще одно уточнение для задания стилей. Расширяет наши возможности и сужает область применения без использования дополнительных классов и конструкций. Псевдоклассы задаются через символ двоеточия. Перечислим часто используемые и кратко познакомимся с ними:</p> <ul> <li><span><strong>first-child и last-child</strong>. Задает стили для первого и последнего дочернего элемента внутри родителя. Например, стили только для первого абзаца внутри контентной области. </span> <pre><code class="hljs">p:first-child{...}<br></code></pre> </li> <li><strong>nth-of-type</strong>. Идея схожа с предыдущем псевдоклассом. Указывает на элеменет в зависимости его расположения внутри родителя. Только здесь еще точнее, может отметить не только первый и последний элементо, но и с любым порядковым номер. Синтаксис такой <strong>селектор:nth-child(значение)</strong>. Значение может быть целочисленное или заданное с помощью формулы. Например, для всех четных абзацей можно использовать такую запись: <pre><code class="hljs coffeescript"><span class="hljs-attribute">p</span>:nth-<span class="hljs-keyword">of</span>-type(<span class="hljs-number">2</span>n){...}</code></pre> </li> <li><strong>hover</strong>. С помощью этого псевдокласса можно отследить такое действие пользователя, как наведение на элемент и задать при этом стилистические особенности. Например, при наведении на ссылку уберем ее подчеркивание. <pre><code class="hljs css"><span class="hljs-tag">a</span><span class="hljs-pseudo">:hover</span> <span class="hljs-rules">{<span class="hljs-rule"><span class="hljs-attribute">text-decoration</span>:<span class="hljs-value"> none</span></span>;<span class="hljs-rule">}</span></span></code></pre> </li> <li><strong>:link, :visited и :active</strong>. Специальные псевдоклассы для работы со ссылками. С помощью них можно добавить стили непосещенных, посещенных и активных ссылок.</li> <li><strong>:focus</strong>. Псевдокласс для элементов в фокусе, например для input куда мы на данный момент вводим значение.</li> </ul> </div> </div>]]></description>
</item><item>
<title>レッスン 7. CSS の基礎、CSS レッスン</title>
<guid isPermaLink="true">https://devnew.org/ja/html/learn-html/1285-urok-7-osnovy-css-uroki-css.html</guid>
<link>https://devnew.org/ja/html/learn-html/1285-urok-7-osnovy-css-uroki-css.html</link>
<dc:creator>admin</dc:creator>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
<category>HTML チュートリアル</category>
<description><![CDATA[<div class="entry-content"> <div class="entry-content"> <p>Многим читающим эту статью уже известно, что CSS расшифровывается как каскадная таблица стилей. Надеюсь, вы хотя бы примерно предполагаете как она работает. Подключать файл стилей мы уже умеем, теперь разберемся с его начинкой. Стили отвечают за внешний вид нашей html-страницы, за ее оформление и привлекательность. Красивый и грамотный дизайн — один из основных факторов успеха и популярности вашего ресурса, помимо контента. </p> <p>CSS-файл состоит из простейших конструкций. Основу его составляют селекторы и свойства этих селекторов. Селектор — это элемент над которым мы хотим произвести внешние изменения, а свойства — как раз те самые изменения элемента, его цвет, размеры, расположение и т.д. Если представить, что html-страница это холст, то каждый элемент картины является селектором, а вот свойства как раз краски для придания жизни.</p> <h2>CSS правила</h2> <p>Теперь понятно, что весь файл стилей с расширением .css состоит из набора так называемых <em>правил</em>. Правило — это совокупность селектора и свойств. Пример двух правил для заголовка h1 и всех блоков div на странице представлен ниже, именно из таких конструкций состоит весь файл CSS:</p> <pre><code class="hljs css"><span class="hljs-tag">h1</span> <span class="hljs-rules">{ <span class="hljs-rule"><span class="hljs-attribute">font-size</span>:<span class="hljs-value"> <span class="hljs-number">22px</span></span></span>;</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">color</span>:<span class="hljs-value"> <span class="hljs-hexcolor">#000</span></span></span>; <span class="hljs-rule">}</span></span> <span class="hljs-tag">div</span> <span class="hljs-rules">{ <span class="hljs-rule"><span class="hljs-attribute">width</span>:<span class="hljs-value"> <span class="hljs-number">100px</span></span></span>;</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">height</span>:<span class="hljs-value"> <span class="hljs-number">50px</span></span></span>; <span class="hljs-rule">}</span></span></code></pre> <p>В данном примере мы обращаемся к самым простым селекторам, селекторам с названием тега. Такие правила применяются ко всем тегам на странице, нет никакой избирательности или фильтрации. Можно назвать такое css-правило общим.</p> <p>Чтобы задать css-свойства для определенной группы элементов, необходимо присвоить каждому элементу группы класс. Класс устанавливается с помощью атрибута class. Например, можно объединить блоки товаров, постов, элементов меню. Все они будут иметь сходные стили, если в качестве селектора использовали название класс. Ниже конструкция каталога, для элементов каталога задаем одинаковые стили.</p> <pre><code class="hljs xml"><span class="hljs-tag">&lt;<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"catalog"</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"catalog-item"</span>&gt;</span>...<span class="hljs-tag">&lt;/<span class="hljs-title">div</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"catalog-item"</span>&gt;</span>...<span class="hljs-tag">&lt;/<span class="hljs-title">div</span>&gt;</span><br> ...<br><span class="hljs-tag">&lt;/<span class="hljs-title">div</span>&gt;</span><br></code></pre> <p>Стили для элементов каталога по установленному классу:</p> <pre><code class="hljs css"><span class="hljs-class">.catalog-item</span> <span class="hljs-rules">{</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">width</span>:<span class="hljs-value"> <span class="hljs-number">250px</span></span></span>;</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">font-size</span>:<span class="hljs-value"> <span class="hljs-number">14px</span></span></span>;</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">background</span>:<span class="hljs-value"> <span class="hljs-hexcolor">#eee</span></span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule">}</span></span></code></pre> <h2>Основные группы CSS-свойств</h2> <p>Все css-свойства условно можно разбить на несколько групп, официально никакой градации не предусмотрено, но для новичков удобнее будет ориентироваться. </p> <ul> <li> <h3>Внешний вид текста</h3> <p>К этой группе css-свойств можно отнести <strong>font-size</strong> (размер шрифта), <strong>text-decoration</strong> (при значении underline имеем подчеркнутый текст), <strong>font-weight</strong> (жирность шрифта, bold - жирный), <strong>font-style</strong> (стиль текста), <strong>color</strong> (цвет текста) и т.д.</p> </li> <li> <h3>Размеры и отступы</h3> <p>В верстке существуют два основных, самых важных понятия типа отображения элемента. Элемент может быть блочный и строчный, другие способы отображения не так важны. Блочные элементы могут иметь размеры (высоту <strong>height</strong> и ширину <strong>width</strong>), отступы внешние (<strong>margin</strong>) и внутренние (<strong>padding</strong>). Свойства css для задания размеров и отступов элементов подробно описаны в так называемой Блочной модели.</p> </li> <li> <h3>Сетки</h3> <p>Все видели как выглядит типичный сайт? Сначала идет header, затем основной блок с контентом и сайдбаром, заканчивается страница обычно футером. Такое расположение элементов относительно друг друга называется построением html-сеток. Подробнее о сетках поговорим в следующих уроках верстки. Пример простейшей сетки ниже с помощью<strong> float</strong> (выравнивания элементов):</p> <pre><code class="hljs xml"><span class="hljs-tag">&lt;<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"header"</span>&gt;</span>Голова<span class="hljs-tag">&lt;/<span class="hljs-title">div</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"left-column"</span>&gt;</span>Контент<span class="hljs-tag">&lt;/<span class="hljs-title">div</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"right-column"</span>&gt;</span>Сайдбар<span class="hljs-tag">&lt;/<span class="hljs-title">div</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"footer"</span>&gt;</span>Подвал<span class="hljs-tag">&lt;/<span class="hljs-title">div</span>&gt;</span><br></code></pre> <p>Стили для сетки:</p> <pre><code class="hljs coffeescript">div {<br> margin-<span class="hljs-attribute">bottom</span>: <span class="hljs-number">10</span>px;<br> <span class="hljs-attribute">padding</span>: <span class="hljs-number">10</span>px <span class="hljs-number">20</span>px <span class="hljs-number">10</span>px <span class="hljs-number">20</span>px;<br> background-<span class="hljs-attribute">color</span>: <span class="hljs-comment">#dff0d8;</span><br><span class="hljs-comment">}</span> .left-column {<br> <span class="hljs-attribute">width</span>: <span class="hljs-number">60</span>%;<br> min-<span class="hljs-attribute">height</span>: <span class="hljs-number">90</span>px;<br> background-<span class="hljs-attribute">color</span>: <span class="hljs-comment">#fcf8e3;</span><br><span class="hljs-comment"> float: left;</span><br><span class="hljs-comment">}</span> .right-column {<br> <span class="hljs-attribute">width</span>: <span class="hljs-number">25</span>%;<br> min-<span class="hljs-attribute">height</span>: <span class="hljs-number">90</span>px;<br> background-<span class="hljs-attribute">color</span>: <span class="hljs-comment">#d9edf7;</span><br><span class="hljs-comment"> float: right;.</span><br><span class="hljs-comment">}</span> .footer {<br> <span class="hljs-attribute">clear</span>: both;<br>}</code></pre> </li> <li> <h3>Позиционирование в CSS</h3> <p>Позиционирование в css используется для создания эффекта многослойности, чтобы элементы могли накладываться друг на друга, всплывать. Для задания одного из режимов позиционирования используют свойство <strong>position</strong> и набор из управленческих свойств<strong> top, left, right, bottom</strong>. Они задают соответствующие отступ для элемента. Популярным значение для свойства position является absolute. Оно исключает элемент из потока, накладывает на страницу сверху. Место выдернутого элемента занимают следующие по порядку блоки. Для задания приоритета позиционирования, порядка наложения используют свойство <strong>z-index</strong> с целочисленными значениями.<strong><br></strong></p> </li> <li><strong>Дизайн (цвета, тени, градиенты, фон)</strong></li> <li><strong>Прочее</strong></li> </ul> <p><span style="font-size:18px;"><b>Что значит каскадность стилей CSS</b></span></p> <p>Пришло время разобраться с понятием каскадности стилей. Этот мощный механизм основывается на комбинировании всех CSS-правил, которые относятся к одному и тому же элементу. Например, мы назначаем общие правила для всех абзацей на странице. Затем добавляем к одному из абзацей класс, для класса тоже задаем свои свойства. Браузер соберет все правила для данного элемента в соответствии с приоритетом и применит их. В этом и заключается каскадность.</p> <p>Понятие каскадности тесно связано с переопределением стилей. Оно происходит, когда в файле стилей для одного и того же элемента задаем одинаковое свойство с разными значениями. Стиль переопределиться в соответствии с приоритетом. Кратко можно описать приоритеты следующим образом в порядке убывания:</p> <ol> <li>Атрибут style внутри тега, самый высокий приоритет</li> <li>Правила для селектора c id</li> <li>Правила для селектора с классом</li> <li>Правила для селектора с тегом</li> </ol> <p>Профессиональными разработчиками часто используется прием нескольких классов у одного элемента. Таким образом не обязательно прописывать свойства для каждого из них, достаточно добавить к нужным блокам класс и прописать свойства для этого класса.</p> <h2>Наследование стилей css</h2> <p>Еще одно важное понятие CSS — это наследование. Все стили определенные для родительского элемента будут приняты и дочерними. Если прописать размер и стиль шрифта, цвет у элемента ul для меню, то все дочерние li примут эти значения. Есть свойства, которые не наследуются. К ним относятся свойства из категории размеры и отступы, позиционирование.</p> </div> </div>]]></description>
</item><item>
<title>レッスン 6. フォームのレイアウト</title>
<guid isPermaLink="true">https://devnew.org/ja/html/learn-html/1294-urok-6-verstka-form.html</guid>
<link>https://devnew.org/ja/html/learn-html/1294-urok-6-verstka-form.html</link>
<dc:creator>admin</dc:creator>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
<category>HTML チュートリアル</category>
<description><![CDATA[<p>Для связи между страницей и сервером в Html есть специальный элемент, это форма. С помощью формы мы передаем набор данных, информации, как угодно, а на сервере эти данные обрабатываются. Формы на html-страницах используются для различных целей, для регистрации, обратной связи, заполнения информации в личном кабинете. Собственно понятно, что ни один сайт в сети так или иначе без форм не обходится, поэтому важно научиться верстать формы и разобраться что к чему.</p> <p>Для создания формы используется тег <strong>&lt;form&gt;</strong> с двумя важными атрибутами. Это <strong>action</strong> и <strong>method</strong>. Первый содержит адрес страницы, куда мы передаем информацию, второй метод отправки. С атрибутом action все теоретически понятно, а вот по Method пройдемся подробнее. Два самых популярных значения атрибута <span>— это get и post. В первом случае данные передаются в строке запроса через так называемые get-параметры. Мы видим их в адресной строке после знака вопроса, используют для поиска информации по сайту, например. Во втором случае, когда ссылка на результат отправки формы нам не нужна, передаем большое количество информации.</span></p> <h2><span>Поля формы, верстка формы</span></h2> <p><span>С формой разобрались, теперь о передачи информации через форму. Чтобы передать какие-то данные, нужен способ, чтобы эти данные ввести. Чаще всего в формах используется тег <strong>&lt;input&gt;</strong>, он одиночный, имеет два обязательных атрибуты <strong>type</strong> и<strong> name</strong>. Они основные, задают тип поля (текст, переключатель, список, пароль) и его имя для дальнейшей обработки на сервере.</span></p> <p><span>Еще один важный атрибут для тега &lt;input&gt; — это атрибут <strong>value</strong>, который содержит значение по умолчанию. То, что видит пользователь перед началом ввода, может ввести свое значение или оставить заполненное, если оно его устраивает.</span></p> <p><span>Чтобы создать подсказку для пользователь и смысловую связь поля и текста используют тег <strong>&lt;label&gt;</strong>. Обернув этим парным тегом текст и поле, вы создаете конструкцию подпись-поле, которая связана не только визуально, но и логически. Если подпись и поля не стоят рядом, обернуть их вместе не получается, то можно использовать простую конструкцию для связи. У &lt;input&gt; добавляем уникальный id, а у &lt;label&gt; добавляем атрибут for с названием этого Id. Таким образом создаем свзять между этими элементами. </span></p> <p><span>С полями разобрались, теперь перейдем к вопросу, как отправить информацию из формы? Для этого необходимо добавить кнопку отправки формы. Это тег &lt;input&gt; с атрибутом <strong>type="submit"</strong>. Чтобы придать кнопке привычный вид, добавляем атрибут value с названием кнопки, например, <strong>value="Отправить"</strong>. Пример простейшей формы:</span></p> <pre><code class="hljs xml"><span class="hljs-doctype">&lt;!DOCTYPE html&gt;</span><br><span class="hljs-tag">&lt;<span class="hljs-title">html</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">head</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">meta</span> <span class="hljs-attribute">charset</span>=<span class="hljs-value">"utf-8"</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">title</span>&gt;</span>Форма<span class="hljs-tag">&lt;/<span class="hljs-title">title</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">head</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">body</span>&gt;</span><br><span class="hljs-tag">&lt;<span class="hljs-title">h1</span>&gt;</span>Форма входа<span class="hljs-tag">&lt;/<span class="hljs-title">h1</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-title">form</span> <span class="hljs-attribute">action</span>=<span class="hljs-value">"http://devnew.org"</span> <span class="hljs-attribute">method</span>=<span class="hljs-value">"post"</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">label</span> <span class="hljs-attribute">for</span>=<span class="hljs-value">"login-field"</span>&gt;</span>Ваш логин<span class="hljs-tag">&lt;/<span class="hljs-title">label</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">input</span> <span class="hljs-attribute">type</span>=<span class="hljs-value">"text"</span> <span class="hljs-attribute">name</span>=<span class="hljs-value">"login"</span> <span class="hljs-attribute">id</span>=<span class="hljs-value">"login-field"</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">br</span>/&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">label</span> <span class="hljs-attribute">for</span>=<span class="hljs-value">"password-field"</span>&gt;</span>Ваш пароль<span class="hljs-tag">&lt;/<span class="hljs-title">label</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">input</span> <span class="hljs-attribute">type</span>=<span class="hljs-value">"password"</span> <span class="hljs-attribute">name</span>=<span class="hljs-value">"password"</span> <span class="hljs-attribute">id</span>=<span class="hljs-value">"password-field"</span>&gt;</span> <br> <span class="hljs-tag">&lt;<span class="hljs-title">br</span>/&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">input</span> <span class="hljs-attribute">type</span>=<span class="hljs-value">"submit"</span> <span class="hljs-attribute">value</span>=<span class="hljs-value">"Отправить"</span>&gt;</span><br><span class="hljs-tag">&lt;/<span class="hljs-title">form</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">body</span>&gt;</span><br><span class="hljs-tag">&lt;/<span class="hljs-title">html</span>&gt;</span></code></pre> <h3>Вот что получаем в итоге:</h3> <p><a href="https://devnew.org/uploads/posts/2023-10/snimok-jekrana-2023-10-24-200559.webp" class="highslide"><img src="https://devnew.org/uploads/posts/2023-10/thumbs/snimok-jekrana-2023-10-24-200559.webp" style="float:left;" alt=""></a> </p> <p><br></p> <h2><br><br><br>Верстка сложных элементов форм</h2> <p>Перейдем к более сложным элементам формы, которые тоже очень часто используются для отправки информации. Иногда необходимо использовать многострочные поля для ввода информации, например, комментариев к записи. Для этого используется тег <strong>&lt;textarea&gt;Значение поля&lt;/textarea&gt;</strong>. Имя задается аналогично атрибутом name, значение по умолчанию пишется между тегами. Есть еще два важных атрибута для задания высоты поля в строках (rows) и ширины в символах (cols).</p> <p>Для создания элемента-галочки (чекбокса) используется уже известный тег &lt;input&gt; с атрибутом <strong>type="checkbox"</strong>. Данный элемент формы передает одно из значений, да или нет. Если да, то на сервер передается имя атрибута, если нет, то ничего. Чтобы по умолчанию галочка уже стояла прописываем атрибут checked.</p> <p>Если необходимо выбрать один из вариантов среди множества, используют элемент-переключатель. Опять используем тег &lt;input&gt;, но уже с другим атрибутом <strong>type="radio"</strong>. Уже понятно, что переключателей будет несколько, для полноты выбора. Атрибут name у них будет одинаковый, чтобы связать их между собой, а атрибут value у каждого свой.</p> <p>Для загрузки файлов используется наше любимое поле &lt;input&gt; с атрибутом <strong>type="file"</strong>. Чтобы передача файла работала добавьте <em>форме</em> атрибут <strong>enctype="multipart/form-data"</strong></p> <pre><code class="hljs xml"><span class="hljs-doctype">&lt;!DOCTYPE html&gt;</span><br><span class="hljs-tag">&lt;<span class="hljs-title">html</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">head</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">meta</span> <span class="hljs-attribute">charset</span>=<span class="hljs-value">"utf-8"</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">title</span>&gt;</span>Сложные формы<span class="hljs-tag">&lt;/<span class="hljs-title">title</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">head</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">body</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">form</span> <span class="hljs-attribute">action</span>=<span class="hljs-value">"https://echo.htmlacademy.ru"</span> <span class="hljs-attribute">method</span>=<span class="hljs-value">"post"</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">p</span>&gt;</span>Выберите один вариант ответа?<span class="hljs-tag">&lt;/<span class="hljs-title">p</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">label</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">input</span> <span class="hljs-attribute">type</span>=<span class="hljs-value">"radio"</span> <span class="hljs-attribute">name</span>=<span class="hljs-value">"question"</span> <span class="hljs-attribute">value</span>=<span class="hljs-value">"1"</span>&gt;</span><br> Ответ 1<br> <span class="hljs-tag">&lt;/<span class="hljs-title">label</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">br</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">label</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">input</span> <span class="hljs-attribute">type</span>=<span class="hljs-value">"radio"</span> <span class="hljs-attribute">name</span>=<span class="hljs-value">"question"</span> <span class="hljs-attribute">value</span>=<span class="hljs-value">"2"</span>&gt;</span><br> Ответ 2<br> <span class="hljs-tag">&lt;/<span class="hljs-title">label</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">br</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">label</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">input</span> <span class="hljs-attribute">type</span>=<span class="hljs-value">"radio"</span> <span class="hljs-attribute">name</span>=<span class="hljs-value">"question"</span> <span class="hljs-attribute">value</span>=<span class="hljs-value">"3"</span>&gt;</span><br> Ответ 3<br> <span class="hljs-tag">&lt;/<span class="hljs-title">label</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">br</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">label</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">textarea</span> <span class="hljs-attribute">rows</span>=<span class="hljs-value">"5"</span>&gt;</span>Комментарий<span class="hljs-tag">&lt;/<span class="hljs-title">textarea</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">label</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">input</span> <span class="hljs-attribute">type</span>=<span class="hljs-value">"submit"</span> <span class="hljs-attribute">value</span>=<span class="hljs-value">"Отправить"</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">form</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">body</span>&gt;</span><br><span class="hljs-tag">&lt;/<span class="hljs-title">html</span>&gt;</span></code></pre> <h3>Получаем в итоге:</h3> <p><a href="https://devnew.org/uploads/posts/2023-10/snimok-jekrana-2023-10-24-200444.webp" class="highslide"><img src="https://devnew.org/uploads/posts/2023-10/thumbs/snimok-jekrana-2023-10-24-200444.webp" style="float:left;" alt=""></a> </p>]]></description>
</item><item>
<title>レッスン 5. テーブル、タグテーブル、tr、td のレイアウト</title>
<guid isPermaLink="true">https://devnew.org/ja/html/learn-html/1303-urok-5-verstka-tablic-tegi-table-tr-td.html</guid>
<link>https://devnew.org/ja/html/learn-html/1303-urok-5-verstka-tablic-tegi-table-tr-td.html</link>
<dc:creator>admin</dc:creator>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
<category>HTML チュートリアル</category>
<description><![CDATA[<div class="entry-content"> <div class="entry-content"> <p>Мы уже знаем, что самое важное, что есть на любом сайте <span>— это информация. Для грамотного представляю данных часто возникает нужда в таблицах. У тех, кто только начинает знакомиться с версткой, часто возникают трудности с версткой именно таблиц. Иногда нужно оформлять большие и сложные таблицы, их верстка сопряжена с использованием различных тегов, структура которых не всегда понятна.</span></p> <p><span>Основным тегом для верстки таблиц является тег &lt;table&gt;. Он оборачивает все содержимое и закрывается по окончанию. Все мы знаем, что у таблицы есть строки и столбцы. Для обозначения строк используем тег &lt;tr&gt;, а для столбцов тег &lt;td&gt;. Содержимое каждого столбца оборачиваем тегом td. Теги td находятся внутри тегов tr. В случае с простейшей таблицей число тегов td в каждой строке(tr) одинаково.</span></p> <p><span>Иногда в процессе верстки таблиц возникает необходимость создать заголовки столбца, для этого мы используем тег th. Этот тег аналогичен тегу td, тоже расположен внутри tr, но идеологически и стилистически отличается. По умолчанию он выделен жирно, и текст в нем </span>выравнивается по центру.</p> <p><span>Не совесем понятно? Рассмотрим таблицу из 4 строк и 2х столбцов с заголовками:</span></p> <pre><code class="hljs xml"><span class="hljs-doctype">&lt;!DOCTYPE html&gt;</span><br><span class="hljs-tag">&lt;<span class="hljs-title">html</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">head</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">meta</span> <span class="hljs-attribute">charset</span>=<span class="hljs-value">"utf-8"</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">title</span>&gt;</span>Простая таблица<span class="hljs-tag">&lt;/<span class="hljs-title">title</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">head</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">body</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-title">table</span> <span class="hljs-attribute">border</span>=<span class="hljs-value">"1"</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">th</span>&gt;</span>Заголовок 1<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">th</span>&gt;</span>Заголовок 2<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Пример столбца 1<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Пример столбца 2<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Пример столбца 3<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Пример столбца 4<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Пример столбца 5<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Пример столбца 6<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Пример 7<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Длинный текст 8<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">tr</span>&gt;</span><br><span class="hljs-tag">&lt;/<span class="hljs-title">table</span>&gt;</span> <br><span class="hljs-tag">&lt;/<span class="hljs-title">body</span>&gt;</span> <br><span class="hljs-tag">&lt;/<span class="hljs-title">html</span>&gt;</span></code></pre> <p>В итоге получаем:</p> <table border="1"> <tbody> <tr> <th>Заголовок 1</th> <th>Заголовок 2</th> </tr> <tr> <td>Пример столбца 1</td> <td>Пример столбца 2</td> </tr> <tr> <td>Пример столбца 3</td> <td>Пример столбца 4</td> </tr> <tr> <td>Пример столбца 5</td> <td>Пример столбца 6</td> </tr> <tr> <td>Пример 7</td> <td>Длинный текст 8</td> </tr> </tbody> </table> <h2>Объединение ячеек в таблице по вертикали и горизонтали, верстка</h2> <p>Теперь поговорим об одном достаточно сложном и непонятном моменте в верстке таблиц. Часто нам необходимо объединить ячейки таблицы между собой по вертикали или горизонтали. Для этого используется атрибут <span><strong>colspan</strong> для ячеек таблицы td. Значения у этого атрибута в виде чисел. Если ставим цифру 2 в значение, то совмещаем по горизонтали две ячейки, текущую и ту, что справа, но в разметке правой ячейки уже быть не должно, содержимое пишем в тот td, которому задали colspan.</span></p> <p><span>Для совмещения ячеек по вертикали необходимо использовать аналогичный атрибут<strong> rowspan</strong> для тега td. Например, задаем значение 2, значит совмещаем ячейку с нижней. Не забываем удалить ту ячейку, с которой совмешаем из разметки таблицы, иначе выйдет смещение и появление лишних элементов в таблице. Почему объединение по вертикали сложнее? Ведь в разметки таблицы данных нижняя ячейка лежит в следующем теге tr, поэтому ее удаление не столь очевидно, как при объединении по горизонтали.</span></p> <p><span>Можно объединить ячейки одновременно по вертикали и горизонтали, для это задаем оба атрибута сразу. Наглядно станет понятно в примере</span>:</p> <pre><code class="hljs xml"><span class="hljs-doctype">&lt;!DOCTYPE html&gt;</span><br><span class="hljs-tag">&lt;<span class="hljs-title">html</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">head</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">meta</span> <span class="hljs-attribute">charset</span>=<span class="hljs-value">"utf-8"</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">title</span>&gt;</span>Простая таблица<span class="hljs-tag">&lt;/<span class="hljs-title">title</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">head</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">body</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-title">table</span> <span class="hljs-attribute">border</span>=<span class="hljs-value">"1"</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span> <span class="hljs-attribute">colspan</span>=<span class="hljs-value">"2"</span>&gt;</span>Объединяем вправо<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span> <span class="hljs-attribute">colspan</span>=<span class="hljs-value">"2"</span> <span class="hljs-attribute">rowspan</span>=<span class="hljs-value">"2"</span>&gt;</span>Объединяем все<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Пример столбца 3<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span> <span class="hljs-attribute">rowspan</span>=<span class="hljs-value">"2"</span>&gt;</span>Объединяем вниз<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Пример столбца 5<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Пример столбца 6<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Текст<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">tr</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Пример 7<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Длинный текст 8<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Текст<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;<span class="hljs-title">td</span>&gt;</span>Текст<span class="hljs-tag">&lt;/<span class="hljs-title">td</span>&gt;</span><br> <span class="hljs-tag">&lt;/<span class="hljs-title">tr</span>&gt;</span><br><span class="hljs-tag">&lt;/<span class="hljs-title">table</span>&gt;</span> <br><span class="hljs-tag">&lt;/<span class="hljs-title">body</span>&gt;</span> <br><span class="hljs-tag">&lt;/<span class="hljs-title">html</span>&gt;</span></code></pre> <table border="1"> <tbody> <tr> <td colspan="2">Объединяем вправо</td> <td colspan="2" rowspan="2">Объединяем все</td> </tr> <tr> <td>Пример столбца 3</td> <td rowspan="2">Объединяем вниз</td> </tr> <tr> <td>Пример столбца 5</td> <td>Пример столбца 6</td> <td>Текст</td> </tr> <tr> <td>Пример 7</td> <td>Длинный текст 8</td> <td>Текст</td> <td>Текст</td> </tr> </tbody> </table> <h2>CSS-оформление таблиц</h2> <p>Верстать таблицы научились, теперь можно создавать таблицы с любым количеством столбцов и строк, нужно лишь корректировать необходимым образом html-разметку. Чтобы придать таблицам привычный вид, нужно знать о css-свойствах, которые полезны при верстке таблиц. </p> <p>Во-первых, таблицам можно задавать рамки. Рамку можно задать, как самой таблице, так и каждой размеченой ячейке таблицы. Но выглядят такие рамки неэстетично и непривычно, чтобы избежать просветов между рамками, используют свойство <strong>border-collapse: collapse;</strong> Оно накладывает рамки ячеек и убирает нежелательные расстояния между ними. Рамку задаем с помощью свойства <strong>border: 2px solid #000;</strong> Этим свойством и его значением задаем размер рамки в два пикселя, черного цвета, простой линией.</p> <p>С помощью рамок можно придать таблице определенный вид. Допустим, хотим расчертить таблицу только на строки или столбцы. Для этого используем css-свойства <strong>border-bottom</strong> и <strong>border-right</strong>.<strong> </strong>С помощью этих свойств задаем рамку у ячейки только с одной стороны,что расчерчивает таблицу нужным образом.</p> <p>Еще одним важным моментом в верстке таблиц становятся отступы внутри ячейки, их задаем с помощью свойства <strong>padding</strong>. Можно задать отступ только с одной стороны, для это используем одно из свойств padding-top, padding-right, padding-bottom или padding-left.</p> <p>Для выравнивания текста внутри ячейки по горизонтали используем css-свойство <strong>text-align</strong> со значениями left, center и right. Для выравнивания по вертикали подойдет свойство <strong>vertical-align</strong>. Оно имеет значения top, middle, bottom. Можно задать для ячеек и строк цвет текст (color), цвет фона (background-color), жирность текста (font-weight) и так далее. Чтобы присвоить определенные стили только для конкретной строки или ячейки целесообразно использовать классы для них, а затем писать css-свойства уже для новых классов.</p> <p>Пример css-кода для разметки простой таблицы.</p> <pre><code class="hljs css"><span class="hljs-tag">table</span> <span class="hljs-rules">{</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">border-collapse</span>:<span class="hljs-value"> collapse</span></span>;</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">border</span>:<span class="hljs-value"> <span class="hljs-number">2px</span> solid black</span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule">}</span></span><br><span class="hljs-tag">td</span> <span class="hljs-rules">{</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">padding</span>:<span class="hljs-value"> <span class="hljs-number">5px</span></span></span>;</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">padding-right</span>:<span class="hljs-value"> <span class="hljs-number">10px</span></span></span>;</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">border-bottom</span>:<span class="hljs-value"> <span class="hljs-number">1px</span> solid lightgray</span></span>;</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">text-align</span>:<span class="hljs-value">center</span></span>; <span class="hljs-rule">}</span></span> <span class="hljs-tag">th</span> <span class="hljs-rules">{</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">padding</span>:<span class="hljs-value"> <span class="hljs-number">10px</span></span></span>;</span><br><span class="hljs-rules"> <span class="hljs-rule"><span class="hljs-attribute">border</span>:<span class="hljs-value"> <span class="hljs-number">1px</span> solid black</span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule">}</span></span><br><span class="hljs-tag">tr</span> <span class="hljs-rules">{</span><br><span class="hljs-rules"><span class="hljs-rule"><span class="hljs-attribute">background-color</span>:<span class="hljs-value"> <span class="hljs-hexcolor">#eee</span></span></span>;</span><br><span class="hljs-rules"><span class="hljs-rule">}</span></span></code></pre> </div> </div>]]></description>
</item></channel></rss>