centered layout with columns breakpoints
This commit is contained in:
parent
88dc7b7ea4
commit
625f6eb84b
|
@ -23,7 +23,7 @@ dependencies:
|
||||||
- field.field.node.materiau.field_thesaurus
|
- field.field.node.materiau.field_thesaurus
|
||||||
- field.field.node.materiau.field_video
|
- field.field.node.materiau.field_video
|
||||||
- field.field.node.materiau.field_workflow
|
- field.field.node.materiau.field_workflow
|
||||||
- image.style.medium
|
- image.style.card_medium
|
||||||
- node.type.materiau
|
- node.type.materiau
|
||||||
module:
|
module:
|
||||||
- image_delta_formatter
|
- image_delta_formatter
|
||||||
|
@ -35,20 +35,20 @@ mode: teaser
|
||||||
content:
|
content:
|
||||||
field_materiau_images:
|
field_materiau_images:
|
||||||
type: image_delta_formatter
|
type: image_delta_formatter
|
||||||
weight: 0
|
weight: 1
|
||||||
region: content
|
region: content
|
||||||
label: hidden
|
label: hidden
|
||||||
settings:
|
settings:
|
||||||
deltas: '0'
|
deltas: '0'
|
||||||
image_style: medium
|
image_style: card_medium
|
||||||
image_link: ''
|
image_link: ''
|
||||||
deltas_reversed: 0
|
deltas_reversed: 0
|
||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
title:
|
title:
|
||||||
label: hidden
|
|
||||||
type: string
|
type: string
|
||||||
weight: -5
|
weight: 0
|
||||||
region: content
|
region: content
|
||||||
|
label: hidden
|
||||||
settings:
|
settings:
|
||||||
link_to_entity: false
|
link_to_entity: false
|
||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -8,10 +8,36 @@ body, html{
|
||||||
margin:0;
|
margin:0;
|
||||||
padding:0;
|
padding:0;
|
||||||
}
|
}
|
||||||
|
body{
|
||||||
|
overflow-x:hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.dialog-off-canvas-main-canvas{
|
||||||
|
width: 100vw;
|
||||||
|
}
|
||||||
|
|
||||||
body.toolbar-horizontal.toolbar-themes.toolbar-no-tabs{
|
body.toolbar-horizontal.toolbar-themes.toolbar-no-tabs{
|
||||||
padding-top: 24px!important;
|
padding-top: 24px!important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
%grided-width{
|
||||||
|
margin:0 auto;
|
||||||
|
$m: $column_goutiere;
|
||||||
|
$colw: $column_width;
|
||||||
|
$bp: $colw + $m;
|
||||||
|
@while $bp < 4096px {
|
||||||
|
$upbp: $bp + $colw + $m;
|
||||||
|
@media only screen and (min-width: $bp + 1px) and (max-width: $upbp) {
|
||||||
|
width:$bp - $m;
|
||||||
|
}
|
||||||
|
$bp: $upbp;
|
||||||
|
}
|
||||||
|
// outline:1px blue solid;
|
||||||
|
// &>*{
|
||||||
|
// outline:1px red solid;
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// _ _ _
|
// _ _ _
|
||||||
// | || |___ __ _ __| |___ _ _
|
// | || |___ __ _ __| |___ _ _
|
||||||
|
@ -19,14 +45,17 @@ body.toolbar-horizontal.toolbar-themes.toolbar-no-tabs{
|
||||||
// |_||_\___\__,_\__,_\___|_|
|
// |_||_\___\__,_\__,_\___|_|
|
||||||
|
|
||||||
header[role="banner"]{
|
header[role="banner"]{
|
||||||
|
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
overflow: visible;
|
overflow: visible;
|
||||||
position: fixed;
|
position: fixed;
|
||||||
z-index: 20;
|
z-index: 20;
|
||||||
width:100vw;
|
width:100vw;
|
||||||
// outline: 1px solid blue;
|
|
||||||
height: $header_height;
|
height: $header_height;
|
||||||
.wrapper{
|
.wrapper{
|
||||||
|
@extend %grided-width;
|
||||||
|
// box-sizing:border-box;
|
||||||
|
|
||||||
.header-block{
|
.header-block{
|
||||||
min-height: 15px;
|
min-height: 15px;
|
||||||
font-size: 0;
|
font-size: 0;
|
||||||
|
@ -50,5 +79,8 @@ header[role="banner"]{
|
||||||
// |_| |_\__,_|_|_||_|
|
// |_| |_\__,_|_|_||_|
|
||||||
|
|
||||||
main[role="main"]{
|
main[role="main"]{
|
||||||
|
@extend %grided-width;
|
||||||
|
|
||||||
padding-top: $header_height+8px;
|
padding-top: $header_height+8px;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,3 +1,6 @@
|
||||||
$base_font_size:16px;
|
$base_font_size:16px;
|
||||||
|
|
||||||
$header_height: 60px;
|
$header_height: 60px;
|
||||||
|
|
||||||
|
$column_width: 210px;
|
||||||
|
$column_goutiere: 15px;
|
|
@ -118,6 +118,7 @@ header[role="banner"]{
|
||||||
}
|
}
|
||||||
|
|
||||||
#block-languageswitcher{
|
#block-languageswitcher{
|
||||||
|
text-align: right;
|
||||||
h2{
|
h2{
|
||||||
margin: 0.1em 0 0 0;
|
margin: 0.1em 0 0 0;
|
||||||
font-size: 0.756em;
|
font-size: 0.756em;
|
||||||
|
@ -132,7 +133,8 @@ header[role="banner"]{
|
||||||
&>ul.links{
|
&>ul.links{
|
||||||
// background-color: #fff;
|
// background-color: #fff;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
width:5em;
|
width:3.5em;
|
||||||
|
// display: inline-block;
|
||||||
height:1px;
|
height:1px;
|
||||||
padding:0.01em 0;
|
padding:0.01em 0;
|
||||||
margin:0;
|
margin:0;
|
||||||
|
@ -152,6 +154,7 @@ header[role="banner"]{
|
||||||
li{
|
li{
|
||||||
list-style: none;
|
list-style: none;
|
||||||
padding:0;
|
padding:0;
|
||||||
|
display: inline-block;
|
||||||
&.is-active{
|
&.is-active{
|
||||||
display:none;
|
display:none;
|
||||||
}
|
}
|
||||||
|
@ -206,6 +209,7 @@ aside.messages{
|
||||||
text-indent: 50px;
|
text-indent: 50px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
width:20px; height:20px;
|
width:20px; height:20px;
|
||||||
|
margin:0;
|
||||||
// border-radius: 7px;
|
// border-radius: 7px;
|
||||||
background-image: url('../img/search.png');
|
background-image: url('../img/search.png');
|
||||||
background-position: center;
|
background-position: center;
|
||||||
|
@ -238,13 +242,21 @@ article.node--type-frontpage{
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.field--name-computed-materials-reference,
|
// .field--name-computed-materials-reference,
|
||||||
.field--name-computed-showrooms-reference,
|
.field--name-computed-showrooms-reference,
|
||||||
.field--name-computed-articles-reference{
|
.field--name-computed-articles-reference{
|
||||||
|
// outline: 1px green solid;
|
||||||
|
margin:0; padding:0;
|
||||||
|
width: calc(100% + #{$column_goutiere});
|
||||||
|
|
||||||
.field__item{
|
.field__item{
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
vertical-align: top;
|
vertical-align: top;
|
||||||
max-width:250px;
|
width:210px;
|
||||||
|
margin:0 $column_goutiere $column_goutiere 0; padding:0;
|
||||||
|
p{
|
||||||
|
margin:0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -266,23 +278,28 @@ article.node--type-frontpage{
|
||||||
|
|
||||||
|
|
||||||
.cards-list{
|
.cards-list{
|
||||||
|
position: relative;
|
||||||
.search-info{
|
.search-info{
|
||||||
margin:0 0 1em 0;
|
margin:0 0 1em 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
&>ul{
|
&>ul{
|
||||||
|
// outline: 1px green solid;
|
||||||
margin:0; padding:0;
|
margin:0; padding:0;
|
||||||
|
width: calc(100% + #{$column_goutiere});
|
||||||
|
|
||||||
&>li{
|
&>li{
|
||||||
list-style: none;
|
list-style: none;
|
||||||
margin:0 1em 1em 0; padding:0;
|
margin:0 $column_goutiere $column_goutiere 0; padding:0;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
vertical-align: top;
|
vertical-align: top;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.card{
|
article.card{
|
||||||
position: relative;
|
position: relative;
|
||||||
width:210px; height:295px;
|
width:$column_width; height:295px;
|
||||||
box-shadow: 0 0 5px rgba(0,0,0,0.2);
|
box-shadow: 0 0 5px rgba(0,0,0,0.2);
|
||||||
// focused
|
// focused
|
||||||
// box-shadow: 0 0 7px rgba(0,0,0,0.9);
|
// box-shadow: 0 0 7px rgba(0,0,0,0.9);
|
||||||
|
|
|
@ -79,6 +79,11 @@ function materiotheme_preprocess_page(&$vars){
|
||||||
// ));
|
// ));
|
||||||
// }
|
// }
|
||||||
|
|
||||||
|
function materiotheme_preprocess_node_materiau_teaser(&$vars){
|
||||||
|
// $vars['attributes']['class'] = 'card';
|
||||||
|
// kint($vars['attributes']);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Implements hook_form_alter
|
* Implements hook_form_alter
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -0,0 +1,67 @@
|
||||||
|
{#
|
||||||
|
/**
|
||||||
|
* @file
|
||||||
|
* Default theme implementation for a field.
|
||||||
|
*
|
||||||
|
* To override output, copy the "field.html.twig" from the templates directory
|
||||||
|
* to your theme's directory and customize it, just like customizing other
|
||||||
|
* Drupal templates such as page.html.twig or node.html.twig.
|
||||||
|
*
|
||||||
|
* Instead of overriding the theming for all fields, you can also just override
|
||||||
|
* theming for a subset of fields using
|
||||||
|
* @link themeable Theme hook suggestions. @endlink For example,
|
||||||
|
* here are some theme hook suggestions that can be used for a field_foo field
|
||||||
|
* on an article node type:
|
||||||
|
* - field--node--field-foo--article.html.twig
|
||||||
|
* - field--node--field-foo.html.twig
|
||||||
|
* - field--node--article.html.twig
|
||||||
|
* - field--field-foo.html.twig
|
||||||
|
* - field--text-with-summary.html.twig
|
||||||
|
* - field.html.twig
|
||||||
|
*
|
||||||
|
* Available variables:
|
||||||
|
* - attributes: HTML attributes for the containing element.
|
||||||
|
* - label_hidden: Whether to show the field label or not.
|
||||||
|
* - title_attributes: HTML attributes for the title.
|
||||||
|
* - label: The label for the field.
|
||||||
|
* - multiple: TRUE if a field can contain multiple items.
|
||||||
|
* - items: List of all the field items. Each item contains:
|
||||||
|
* - attributes: List of HTML attributes for each item.
|
||||||
|
* - content: The field item's content.
|
||||||
|
* - entity_type: The entity type to which the field belongs.
|
||||||
|
* - field_name: The name of the field.
|
||||||
|
* - field_type: The type of the field.
|
||||||
|
* - label_display: The display settings for the label.
|
||||||
|
*
|
||||||
|
* @see template_preprocess_field()
|
||||||
|
*
|
||||||
|
* @ingroup themeable
|
||||||
|
*/
|
||||||
|
#}
|
||||||
|
{%
|
||||||
|
set title_classes = [
|
||||||
|
label_display == 'visually_hidden' ? 'visually-hidden',
|
||||||
|
]
|
||||||
|
%}
|
||||||
|
<div class="cards-list">
|
||||||
|
{% if label_hidden %}
|
||||||
|
<ul{{ attributes }}>
|
||||||
|
{% for item in items %}
|
||||||
|
<li{{ item.attributes }}>{{ item.content }}</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
{% else %}
|
||||||
|
<div{{ attributes }}>
|
||||||
|
<div{{ title_attributes.addClass(title_classes) }}>{{ label }}</div>
|
||||||
|
{% if multiple %}
|
||||||
|
<ul>
|
||||||
|
{% endif %}
|
||||||
|
{% for item in items %}
|
||||||
|
<li{{ item.attributes }}>{{ item.content }}</li>
|
||||||
|
{% endfor %}
|
||||||
|
{% if multiple %}
|
||||||
|
</ul>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
|
@ -0,0 +1,84 @@
|
||||||
|
{#
|
||||||
|
/**
|
||||||
|
* @file
|
||||||
|
* Default theme implementation to display a node.
|
||||||
|
*
|
||||||
|
* Available variables:
|
||||||
|
* - node: The node entity with limited access to object properties and methods.
|
||||||
|
* Only method names starting with "get", "has", or "is" and a few common
|
||||||
|
* methods such as "id", "label", and "bundle" are available. For example:
|
||||||
|
* - node.getCreatedTime() will return the node creation timestamp.
|
||||||
|
* - node.hasField('field_example') returns TRUE if the node bundle includes
|
||||||
|
* field_example. (This does not indicate the presence of a value in this
|
||||||
|
* field.)
|
||||||
|
* - node.isPublished() will return whether the node is published or not.
|
||||||
|
* Calling other methods, such as node.delete(), will result in an exception.
|
||||||
|
* See \Drupal\node\Entity\Node for a full list of public properties and
|
||||||
|
* methods for the node object.
|
||||||
|
* - label: (optional) The title of the node.
|
||||||
|
* - content: All node items. Use {{ content }} to print them all,
|
||||||
|
* or print a subset such as {{ content.field_example }}. Use
|
||||||
|
* {{ content|without('field_example') }} to temporarily suppress the printing
|
||||||
|
* of a given child element.
|
||||||
|
* - author_picture: The node author user entity, rendered using the "compact"
|
||||||
|
* view mode.
|
||||||
|
* - metadata: Metadata for this node.
|
||||||
|
* - date: (optional) Themed creation date field.
|
||||||
|
* - author_name: (optional) Themed author name field.
|
||||||
|
* - url: Direct URL of the current node.
|
||||||
|
* - display_submitted: Whether submission information should be displayed.
|
||||||
|
* - attributes: HTML attributes for the containing element.
|
||||||
|
* The attributes.class element may contain one or more of the following
|
||||||
|
* classes:
|
||||||
|
* - node: The current template type (also known as a "theming hook").
|
||||||
|
* - node--type-[type]: The current node type. For example, if the node is an
|
||||||
|
* "Article" it would result in "node--type-article". Note that the machine
|
||||||
|
* name will often be in a short form of the human readable label.
|
||||||
|
* - node--view-mode-[view_mode]: The View Mode of the node; for example, a
|
||||||
|
* teaser would result in: "node--view-mode-teaser", and
|
||||||
|
* full: "node--view-mode-full".
|
||||||
|
* The following are controlled through the node publishing options.
|
||||||
|
* - node--promoted: Appears on nodes promoted to the front page.
|
||||||
|
* - node--sticky: Appears on nodes ordered above other non-sticky nodes in
|
||||||
|
* teaser listings.
|
||||||
|
* - node--unpublished: Appears on unpublished nodes visible only to site
|
||||||
|
* admins.
|
||||||
|
* - title_attributes: Same as attributes, except applied to the main title
|
||||||
|
* tag that appears in the template.
|
||||||
|
* - content_attributes: Same as attributes, except applied to the main
|
||||||
|
* content tag that appears in the template.
|
||||||
|
* - author_attributes: Same as attributes, except applied to the author of
|
||||||
|
* the node tag that appears in the template.
|
||||||
|
* - title_prefix: Additional output populated by modules, intended to be
|
||||||
|
* displayed in front of the main title tag that appears in the template.
|
||||||
|
* - title_suffix: Additional output populated by modules, intended to be
|
||||||
|
* displayed after the main title tag that appears in the template.
|
||||||
|
* - view_mode: View mode; for example, "teaser" or "full".
|
||||||
|
* - teaser: Flag for the teaser state. Will be true if view_mode is 'teaser'.
|
||||||
|
* - page: Flag for the full page state. Will be true if view_mode is 'full'.
|
||||||
|
* - readmore: Flag for more state. Will be true if the teaser content of the
|
||||||
|
* node cannot hold the main body content.
|
||||||
|
* - logged_in: Flag for authenticated user status. Will be true when the
|
||||||
|
* current user is a logged-in member.
|
||||||
|
* - is_admin: Flag for admin user status. Will be true when the current user
|
||||||
|
* is an administrator.
|
||||||
|
*
|
||||||
|
* @see template_preprocess_node()
|
||||||
|
*
|
||||||
|
* @todo Remove the id attribute (or make it a class), because if that gets
|
||||||
|
* rendered twice on a page this is invalid CSS for example: two lists
|
||||||
|
* in different view modes.
|
||||||
|
*
|
||||||
|
* @ingroup themeable
|
||||||
|
*/
|
||||||
|
#}
|
||||||
|
<article{{ attributes.addClass('card') }}>
|
||||||
|
<header>
|
||||||
|
<h1>{{ label }}</h1>
|
||||||
|
<!-- <h4>{{ content.field_description }}</h4>
|
||||||
|
<span class="ref">{{ content.field_reference }}</span> -->
|
||||||
|
</header>
|
||||||
|
<section class="images">
|
||||||
|
{{ content.field_materiau_images }}
|
||||||
|
</section>
|
||||||
|
</article>
|
|
@ -0,0 +1,108 @@
|
||||||
|
{#
|
||||||
|
/**
|
||||||
|
* @file
|
||||||
|
* Theme override to display a node.
|
||||||
|
*
|
||||||
|
* Available variables:
|
||||||
|
* - node: The node entity with limited access to object properties and methods.
|
||||||
|
* Only method names starting with "get", "has", or "is" and a few common
|
||||||
|
* methods such as "id", "label", and "bundle" are available. For example:
|
||||||
|
* - node.getCreatedTime() will return the node creation timestamp.
|
||||||
|
* - node.hasField('field_example') returns TRUE if the node bundle includes
|
||||||
|
* field_example. (This does not indicate the presence of a value in this
|
||||||
|
* field.)
|
||||||
|
* - node.isPublished() will return whether the node is published or not.
|
||||||
|
* Calling other methods, such as node.delete(), will result in an exception.
|
||||||
|
* See \Drupal\node\Entity\Node for a full list of public properties and
|
||||||
|
* methods for the node object.
|
||||||
|
* - label: (optional) The title of the node.
|
||||||
|
* - content: All node items. Use {{ content }} to print them all,
|
||||||
|
* or print a subset such as {{ content.field_example }}. Use
|
||||||
|
* {{ content|without('field_example') }} to temporarily suppress the printing
|
||||||
|
* of a given child element.
|
||||||
|
* - author_picture: The node author user entity, rendered using the "compact"
|
||||||
|
* view mode.
|
||||||
|
* - metadata: Metadata for this node.
|
||||||
|
* - date: (optional) Themed creation date field.
|
||||||
|
* - author_name: (optional) Themed author name field.
|
||||||
|
* - url: Direct URL of the current node.
|
||||||
|
* - display_submitted: Whether submission information should be displayed.
|
||||||
|
* - attributes: HTML attributes for the containing element.
|
||||||
|
* The attributes.class element may contain one or more of the following
|
||||||
|
* classes:
|
||||||
|
* - node: The current template type (also known as a "theming hook").
|
||||||
|
* - node--type-[type]: The current node type. For example, if the node is an
|
||||||
|
* "Article" it would result in "node--type-article". Note that the machine
|
||||||
|
* name will often be in a short form of the human readable label.
|
||||||
|
* - node--view-mode-[view_mode]: The View Mode of the node; for example, a
|
||||||
|
* teaser would result in: "node--view-mode-teaser", and
|
||||||
|
* full: "node--view-mode-full".
|
||||||
|
* The following are controlled through the node publishing options.
|
||||||
|
* - node--promoted: Appears on nodes promoted to the front page.
|
||||||
|
* - node--sticky: Appears on nodes ordered above other non-sticky nodes in
|
||||||
|
* teaser listings.
|
||||||
|
* - node--unpublished: Appears on unpublished nodes visible only to site
|
||||||
|
* admins.
|
||||||
|
* - title_attributes: Same as attributes, except applied to the main title
|
||||||
|
* tag that appears in the template.
|
||||||
|
* - content_attributes: Same as attributes, except applied to the main
|
||||||
|
* content tag that appears in the template.
|
||||||
|
* - author_attributes: Same as attributes, except applied to the author of
|
||||||
|
* the node tag that appears in the template.
|
||||||
|
* - title_prefix: Additional output populated by modules, intended to be
|
||||||
|
* displayed in front of the main title tag that appears in the template.
|
||||||
|
* - title_suffix: Additional output populated by modules, intended to be
|
||||||
|
* displayed after the main title tag that appears in the template.
|
||||||
|
* - view_mode: View mode; for example, "teaser" or "full".
|
||||||
|
* - teaser: Flag for the teaser state. Will be true if view_mode is 'teaser'.
|
||||||
|
* - page: Flag for the full page state. Will be true if view_mode is 'full'.
|
||||||
|
* - readmore: Flag for more state. Will be true if the teaser content of the
|
||||||
|
* node cannot hold the main body content.
|
||||||
|
* - logged_in: Flag for authenticated user status. Will be true when the
|
||||||
|
* current user is a logged-in member.
|
||||||
|
* - is_admin: Flag for admin user status. Will be true when the current user
|
||||||
|
* is an administrator.
|
||||||
|
*
|
||||||
|
* @see template_preprocess_node()
|
||||||
|
*
|
||||||
|
* @todo Remove the id attribute (or make it a class), because if that gets
|
||||||
|
* rendered twice on a page this is invalid CSS for example: two lists
|
||||||
|
* in different view modes.
|
||||||
|
*/
|
||||||
|
#}
|
||||||
|
{%
|
||||||
|
set classes = [
|
||||||
|
'node',
|
||||||
|
'node--type-' ~ node.bundle|clean_class,
|
||||||
|
node.isPromoted() ? 'node--promoted',
|
||||||
|
node.isSticky() ? 'node--sticky',
|
||||||
|
not node.isPublished() ? 'node--unpublished',
|
||||||
|
view_mode ? 'node--view-mode-' ~ view_mode|clean_class,
|
||||||
|
]
|
||||||
|
%}
|
||||||
|
{{ attach_library('classy/node') }}
|
||||||
|
<article{{ attributes.addClass(classes) }}>
|
||||||
|
|
||||||
|
{{ title_prefix }}
|
||||||
|
{% if label and not page %}
|
||||||
|
<h2{{ title_attributes }}>
|
||||||
|
<a href="{{ url }}" rel="bookmark">{{ label }}</a>
|
||||||
|
</h2>
|
||||||
|
{% endif %}
|
||||||
|
{{ title_suffix }}
|
||||||
|
|
||||||
|
{% if display_submitted %}
|
||||||
|
<footer class="node__meta">
|
||||||
|
{{ author_picture }}
|
||||||
|
<div{{ author_attributes.addClass('node__submitted') }}>
|
||||||
|
{% trans %}Submitted by {{ author_name }} on {{ date }}{% endtrans %}
|
||||||
|
{{ metadata }}
|
||||||
|
</div>
|
||||||
|
</footer>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
<div{{ content_attributes.addClass('node__content') }}>
|
||||||
|
{{ content }}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</article>
|
|
@ -1,5 +1,5 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="card">
|
<article class="card">
|
||||||
<header>
|
<header>
|
||||||
<h1>{{ item.title }}</h1>
|
<h1>{{ item.title }}</h1>
|
||||||
<h4>{{ item.description }}</h4>
|
<h4>{{ item.description }}</h4>
|
||||||
|
@ -19,7 +19,7 @@
|
||||||
<img class="blank" :src="blanksrc">
|
<img class="blank" :src="blanksrc">
|
||||||
</figure>
|
</figure>
|
||||||
</section>
|
</section>
|
||||||
</div>
|
</article>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
Loading…
Reference in New Issue