Css grid layout пример

Содержание
  1. CSS Grid Layout Module
  2. Browser Support
  3. Grid Elements
  4. Example
  5. Display Property
  6. Example
  7. Example
  8. Grid Columns
  9. Grid Rows
  10. Grid Gaps
  11. Example
  12. Example
  13. Example
  14. Example
  15. Grid Lines
  16. Example
  17. Example
  18. All CSS Grid Properties
  19. The examples
  20. Defining a Grid
  21. Line-based placement
  22. Line-based placement shorthand — grid-row and grid-column
  23. Line-based placement shorthand — grid-area
  24. Line-based placement spanning tracks
  25. Line-based placement spanning tracks with the span keyword
  26. Line-based placement named lines
  27. Line-based placement named lines with spans
  28. Using repeat notation
  29. Explicit and Implicit Grid
  30. Defining Grid Areas
  31. No clearing required
  32. Redefining Grid Areas with Media Queries
  33. Source Independence
  34. Layering items
  35. A grid item as a new positioning context
  36. Grid auto-placement
  37. Grid auto-flow column
  38. Grid auto-placement mixed with placed items
  39. The auto-fill keyword in repeating track definitions
  40. Nested Grid
  41. Implicit named grid lines
  42. Using Order
  43. Box alignment align-items
  44. Box alignment justify-items
  45. Box alignment align-self
  46. Box alignment justify-self
  47. minmax() in auto-fill repeating tracks
  48. minmax() and spanning columns and rows
  49. The auto-fill keyword with named grid lines
  50. A simple minmax example
  51. Aligning the Grid
  52. Aligning the grid with space-around and space-between
  53. Multiple tracks in a track-list with auto-fill
  54. Multiple tracks in a track-list with auto-fill and minmax()
  55. Percentage based grids and gaps
  56. auto-fill vs. auto-fit
  57. CSS Grid Level 2 Examples
  58. Subgrid on columns and rows
  59. Subgrid on columns, implicit grid rows
  60. Subgrid on rows, defined column tracks
  61. The subgrid can override the gap on the parent
  62. No implicit grid in subgridded dimension
  63. Line names on the parent are passed into the subgrid
  64. Line names on the child are added to those from the parent
  65. Padding is honored on the subgrid
  66. Margin is honored on the subgrid
  67. Полное визуальное руководство/шпаргалка по CSS Grid
  68. Что такое CSS Grid ?
  69. Архитектура CSS Grid
  70. Схема CSS Grid
  71. Настройка проекта
  72. HTML

CSS Grid Layout Module

The CSS Grid Layout Module offers a grid-based layout system, with rows and columns, making it easier to design web pages without having to use floats and positioning.

Browser Support

The grid properties are supported in all modern browsers.

Grid Elements

A grid layout consists of a parent element, with one or more child elements.

Example

Display Property

An HTML element becomes a grid container when its display property is set to grid or inline-grid .

Example

Example

All direct children of the grid container automatically become grid items.

Grid Columns

The vertical lines of grid items are called columns.

Grid Rows

The horizontal lines of grid items are called rows.

Grid Gaps

The spaces between each column/row are called gaps.

You can adjust the gap size by using one of the following properties:

Читайте также:  Перевести во float php

Example

The column-gap property sets the gap between the columns:

Example

The row-gap property sets the gap between the rows:

Example

The gap property is a shorthand property for the row-gap and the column-gap properties:

Example

The gap property can also be used to set both the row gap and the column gap in one value:

Grid Lines

The lines between columns are called column lines.

The lines between rows are called row lines.

Refer to line numbers when placing a grid item in a grid container:

Example

Place a grid item at column line 1, and let it end on column line 3:

Example

Place a grid item at row line 1, and let it end on row line 3:

All CSS Grid Properties

Property Description
column-gap Specifies the gap between the columns
gap A shorthand property for the row-gap and the column-gap properties
grid A shorthand property for the grid-template-rows, grid-template-columns, grid-template-areas, grid-auto-rows, grid-auto-columns, and the grid-auto-flow properties
grid-area Either specifies a name for the grid item, or this property is a shorthand property for the grid-row-start, grid-column-start, grid-row-end, and grid-column-end properties
grid-auto-columns Specifies a default column size
grid-auto-flow Specifies how auto-placed items are inserted in the grid
grid-auto-rows Specifies a default row size
grid-column A shorthand property for the grid-column-start and the grid-column-end properties
grid-column-end Specifies where to end the grid item
grid-column-gap Specifies the size of the gap between columns
grid-column-start Specifies where to start the grid item
grid-gap A shorthand property for the grid-row-gap and grid-column-gap properties
grid-row A shorthand property for the grid-row-start and the grid-row-end properties
grid-row-end Specifies where to end the grid item
grid-row-gap Specifies the size of the gap between rows
grid-row-start Specifies where to start the grid item
grid-template A shorthand property for the grid-template-rows, grid-template-columns and grid-areas properties
grid-template-areas Specifies how to display columns and rows, using named grid items
grid-template-columns Specifies the size of the columns, and how many columns in a grid layout
grid-template-rows Specifies the size of the rows in a grid layout
row-gap Specifies the gap between the grid rows

Источник

The examples

The following examples include an image of how the example should look in a supporting browser, they each link to a page with more information about the technique being shown, code and a CodePen of the example. Unless otherwise noted these examples work in any browser supporting the up to date Grid Specification. They will not work in IE10 or 11.

For page layout examples see a collection of page layouts here.

Читайте также:  testpage title" >>> parser = etree.HTMLParser() >>> tree = etree.parse(StringIO(broken_html), parser) >>> print etree.tostring(tree.getroot(), pretty_print=True) test

Defining a Grid

Screenshot of Defining a Grid

To define a grid use new values of the display property `grid` or `inline-grid`. You can then create column and row tracks.

Line-based placement

Screenshot of Line-based placement

Line-based placement shorthand — grid-row and grid-column

Screenshot of Line-based placement shorthand - grid-row and grid-column

Line-based placement shorthand — grid-area

Screenshot of Line-based placement shorthand - grid-area

Line-based placement spanning tracks

Screenshot of Line-based placement spanning tracks

Line-based placement spanning tracks with the span keyword

Screenshot of Line-based placement spanning tracks with the span keyword

Line-based placement named lines

Screenshot of Line-based placement named lines

Line-based placement named lines with spans

Screenshot of Line-based placement named lines with spans

Using repeat notation

Screenshot of Using repeat notation

Explicit and Implicit Grid

Screenshot of Explicit and Implicit Grid

Defining Grid Areas

Screenshot of Defining Grid Areas

No clearing required

Screenshot of No clearing required

Redefining Grid Areas with Media Queries

Screenshot of Redefining Grid Areas with Media Queries

Source Independence

Screenshot of Source Independence

Layering items

Screenshot of Layering items

A grid item as a new positioning context

Screenshot of A grid item as a new positioning context

Grid auto-placement

Screenshot of Grid auto-placement

Grid auto-flow column

Screenshot of Grid auto-flow column

Grid auto-placement mixed with placed items

Screenshot of Grid auto-placement mixed with placed items

The auto-fill keyword in repeating track definitions

Screenshot of The auto-fill keyword in repeating track definitions

When using repeat notation you can use auto-fill rather than an integer to create as many tracks as will fill the container

Nested Grid

Screenshot of Nested Grid

Implicit named grid lines

Screenshot of Implicit named grid lines

Using Order

Screenshot of Using Order

Box alignment align-items

Screenshot of Box alignment align-items

Box alignment justify-items

Screenshot of Box alignment justify-items

Box alignment align-self

Screenshot of Box alignment align-self

Box alignment justify-self

Screenshot of Box alignment justify-self

minmax() in auto-fill repeating tracks

Screenshot of minmax() in auto-fill repeating tracks

A grid that contains as many 200 pixel column tracks as will fit into the container with the remaining space shared equally between the columns.

minmax() and spanning columns and rows

Screenshot of minmax() and spanning columns and rows

A grid that contains as many 200 pixel column tracks as will fit into the container with the remaining space shared equally between the columns.

The auto-fill keyword with named grid lines

Screenshot of The auto-fill keyword with named grid lines

A simple minmax example

Screenshot of A simple minmax example

Aligning the Grid

Screenshot of Aligning the Grid

Aligning the grid with space-around and space-between

Screenshot of Aligning the grid with space-around and space-between

Multiple tracks in a track-list with auto-fill

Screenshot of Multiple tracks in a track-list with auto-fill

Multiple tracks in a track-list with auto-fill and minmax()

Screenshot of Multiple tracks in a track-list with auto-fill and minmax()

Percentage based grids and gaps

Screenshot of Percentage based grids and gaps

auto-fill vs. auto-fit

Screenshot of auto-fill vs. auto-fit

An example to demonstrate the difference between the auto-fill and auto-fit keywords in repeat notation

CSS Grid Level 2 Examples

Subgrid on columns and rows

Screenshot of Subgrid on columns and rows

Subgrid on columns, implicit grid rows

Screenshot of Subgrid on columns, implicit grid rows

Subgrid on rows, defined column tracks

Screenshot of Subgrid on rows, defined column tracks

The subgrid can override the gap on the parent

Screenshot of The subgrid can override the gap on the parent

No implicit grid in subgridded dimension

Screenshot of No implicit grid in subgridded dimension

Line names on the parent are passed into the subgrid

Screenshot of Line names on the parent are passed into the subgrid

If you define line names on the parent, these are passed into the subgrid and can be used to position things.

Line names on the child are added to those from the parent

Screenshot of Line names on the child are added to those from the parent

If you define line names on the parent, these are passed into the subgrid and can be used to position things.

Читайте также:  Reload page javascript code

Padding is honored on the subgrid

Screenshot of Padding is honored on the subgrid

Margin is honored on the subgrid

Screenshot of Margin is honored on the subgrid

This is a project by Rachel Andrew. Take a look at some of the other things I make.

  • Perch CMS — the original Really Little CMS. Designed for speed and simple implementation.
  • Notist — slide sharing and much more. Create your public speaking portfolio.
  • The CSS Workshop — learn CSS Layout with me

This site is hosted on Netlify, thanks to their free hosting for open source projects.

Источник

Полное визуальное руководство/шпаргалка по CSS Grid

Сегодня мы с вами рассмотрим свойства CSS Grid (далее также — Грид), позволяющие создавать адаптивные или отзывчивые макеты веб-страниц. Я постараюсь кратко, но полно объяснить, как работает каждое свойство.

Что такое CSS Grid ?

Грид — это макет для сайта (его схема, проект).

Грид-модель позволяет размещать контент сайта (располагать его определенным образом, позиционировать). Она позволяет создавать структуры, необходимые для обеспечения отзывчивости сайтов на различных устройствах. Это означает, что сайт будет одинаково хорошо смотреться на компьютере, телефоне и планшете.

Вот простой пример макета сайта, созданного с помощью Грида.

Архитектура CSS Grid

Как же Грид работает? Элементы Грида (grid items) располагаются вдоль главной или основной (main) и поперечной (cross) оси (axis). При помощи различных свойств мы можем манипулировать элементами для создания макетов.

Помимо прочего, у нас имеется возможность объединять строки и колонки подобно тому, как мы это делаем в Excel , что предоставляет нам большую гибкость, чем Флекс ( Flexbox ).

К слову, если вас интересует Флекс, вот соответствующая статья.

Схема CSS Grid

Схема содержит все возможные свойства, предоставляемые Гридом. Эти свойства делятся на:

Обратите внимание: красным цветом отмечены сокращения для свойств:


К концу настоящей статьи у вас будет полное понимание того, как работает каждое из них.

Настройка проекта

Для данного проекта требуются начальные знания HTML , CSS и умение работать с VSCode (или другим редактором по вашему вкусу). Делаем следующее:

  1. Создаем директорию для проекта, например, Project1 и открываем ее в редакторе ( cd Project1 , code . )
  2. Создаем файлы index.html и style.css
  3. Устанавливаем в VSCode сервер для разработки ( Live Server , расширение) и запускаем его

Или вы можете просто открыть Codepen (или любую другую песочницу) и начать писать код.

Все готово, можно приступать к делу.

HTML

Создаем 3 контейнера внутри body :

Источник

Оцените статью