<div class="rh-navigation-block" tabindex="0">

    <div class="rh-navigation-block__header">
        <span class="rh-button-circle rh-button-circle--default rh-button-circle--small rh-navigation-block__header-icon">
            <span class="icon-arrow-right"></span>
        </span>

        <a href="#" class="rh-link--navigation rh-navigation-block__header-title" title="Om Region Halland">
            Om Region Halland
        </a>
    </div>

    <div class="rh-navigation-block__description">
        <p class="rh-navigation-block__description-text">
            Vi är på väg. ”Halland – bästa livsplatsen” är vår vision. Välkommen att följa oss på vägen dit!
        </p>
    </div>
</div>
<div class="rh-navigation-block{{#if isClickable}} rh-element--clickable rh-navigation-block--clickable{{/if}}" tabindex="0">
    {{#if isClickable}}
    <a href="#" class="rh-link--navigation rh-element--clickable-link" title="{{title}}"{{#if isClickable}} tabindex="-1"{{/if}}></a>
    {{/if}}

    <div class="rh-navigation-block__header">
        <span class="rh-button-circle rh-button-circle--default rh-button-circle--small rh-navigation-block__header-icon">
            <span class="icon-arrow-right"></span>
        </span>

        <a href="#" class="rh-link--navigation rh-navigation-block__header-title" {{#if isClickable}} tabindex="-1"{{else}} title="{{title}}"{{/if}}>
            {{title}}
        </a>
    </div>

    <div class="rh-navigation-block__description{{#if description.extendClass}} {{description.extendClass}}{{/if}}">
        <p class="rh-navigation-block__description-text">
            {{description.text}}
        </p>
    </div>
</div>
{
  "name": "default",
  "isClickable": false,
  "title": "Om Region Halland",
  "description": {
    "text": "Vi är på väg. ”Halland – bästa livsplatsen” är vår vision. Välkommen att följa oss på vägen dit!",
    "extendClass": ""
  }
}
  • Content:
    /* Needed components
    @import '../../Atoms/link/_link.scss';
    @import '../../Atoms/button-circle/_button-circle.scss';
    */
    
    .rh-navigation-block {
    	// Reset p tag's settings on global
    	p { margin-bottom: 0; }
    
    	/* Box-modell/beteende */
    	min-height: $navigation-block--min-height;
    
    	@if $navigation-block--width {
    		width: $navigation-block--width;
    	}
    
    	@if $navigation-block--min-width {
    		min-width: $navigation-block--min-width;
    	}
    
    	@if $navigation-block--max-width {
    		max-width: $navigation-block--max-width;
    	}
    
    	@if $navigation-block--background-color {
    		background-color: $navigation-block--background-color;
    	}
    
    	padding: $navigation-block--padding;
    
    	/* Visuellt */
    	@if $navigation-block--border {
    		border: $navigation-block--border;
    	}
    	@if $navigation-block--border-radius {
    		border-radius: $navigation-block--border-radius;
    	}
    
    	&__header {
    		/* Box-modell/beteende */
    		display: flex;
    		align-items: flex-start;
    
    		&-icon {
    			@if $navigation-block__header-round-button--border {
    				border: $navigation-block__header-round-button--border;
    			}
    
    			@if $navigation-block__header-round-button--background-color {
    				background-color: $navigation-block__header-round-button--background-color;
    			}
    
    			@if $navigation-block__header-round-button--icon-color {
    				color: $navigation-block__header-round-button--icon-color;
    			}
    
    			/* Blandat/övrigt */
    			@if $navigation-block__header-round-button--cursor {
    				cursor: $navigation-block__header-round-button--cursor;
    			}
    
    			@if $navigation-block__header-round-button--hover-active {
    				&:hover, &:active, &:focus {
    					@if $navigation-block__header-round-button--border-hover-active {
    						border: $navigation-block__header-round-button--border-hover-active;
    					}
    
    					@if $navigation-block__header-round-button--background-color-hover-active
    					{
    						background-color: $navigation-block__header-round-button--background-color-hover-active;
    					}
    
    					@if $navigation-block__header-round-button--icon-color-hover-active {
    						color: $navigation-block__header-round-button--icon-color-hover-active;
    					}
    				}
    			}
    		}
    
    		&-title {
    			/* Box-modell/beteende */
    			margin: $navigation-block__header-title--margin;
    
                @if $navigation-block__header-title-link--color {
                    color: $navigation-block__header-title-link--color;
                }
    
                font-size: $navigation-block__header-title-link--font-size;
                font-weight: $navigation-block__header-title-link--font-weight;
                line-height: $navigation-block__header-title-link--line-height;
                word-break: $navigation-block__header-title-link--word-break;
    
                @include large {
                    margin: $navigation-block__header-title--margin-large;
                    font-size: $navigation-block__header-title-link--font-size-large;
                }
    		}
    	}
    
    	&__description {
    		/* Box-modell/beteende */
    		@if $navigation-block__description--margin {
    			margin: $navigation-block__description--margin;
    		}
    
    		&-text {
    			/* Typografi */
    			@if $navigation-block__description-text--color {
    				color: $navigation-block__description-text--color;
    			}
    		}
    	}
    
    	// Create the effects :active, :hover, :focus - :focus-within by using @mixin
    	&--clickable {
            $navigationBlockClickableClassname: "rh-navigation-block--clickable"; //Main container's classname
            $navigationBlockIconClassname: "rh-navigation-block__header-icon";
            $navigationBlockTitleClassname: "rh-navigation-block__header-title";
            $navigationBlockDescriptionClassname: "rh-navigation-block__description-text";
    
    		@include create-clickable-element-effect(
                $navigationBlockClickableClassname, //Container (box) classname
                $navigationBlockTitleClassname, //Title (or link) classname
    			$navigationBlockDescriptionClassname, //Description classname
    			$navigation-block-effect__box-outside, //Activating outside effect
    			$navigation-block-effect__content-inside, //Activating inside effect
                $navigation-block-effect--border, // Box border-top styling
                $navigation-block-effect--border, // Box border-right styling
                $navigation-block-effect--border, // Box border-bottom styling
                $navigation-block-effect--border, // Box border-left styling
    			$navigation-block-effect--box-shadow, // Box shadow styling
    			$navigation-block-effect-focus--box-shadow, // Shadow when focus
                $navigation-block-effect--title-text-color, // Title text color
                $navigation-block-effect--title-text-decoration, //Title text decoration
                $navigation-block-effect--description-text-color, // Description text color
                $navigation-block-effect--description-text-decoration // Description text decoration
            ){
                // Create extend effect for icon
                @at-root .#{$navigationBlockClickableClassname}:hover,
                    .#{$navigationBlockClickableClassname}:active {
    
                        @include create-icon-button-effect(
                            $navigationBlockClickableClassname,
                            $navigationBlockIconClassname,
                            $navigation-block__header-round-button--background-color-hover-active,
                            $navigation-block__header-round-button--icon-color-hover-active
                    )
                }
    
                // Separate generation of :focus and focus-within for a better compatible with IE11 and Edge (old version)
                @at-root .#{$navigationBlockClickableClassname}:focus,
                    .#{$navigationBlockClickableClassname}:focus-within {
    
                    @include create-icon-button-effect(
                        $navigationBlockClickableClassname,
                        $navigationBlockIconClassname,
                        $navigation-block__header-round-button--background-color-hover-active,
                        $navigation-block__header-round-button--icon-color-hover-active
                    )
                }
            }
    	}
    }
    
  • URL: /components/raw/navigation-block/_navigation-block.scss
  • Filesystem Path: components/Molecules/navigation-block/_navigation-block.scss
  • Size: 6 KB
  • Content:
    {
        "name": "regionhalland/navigation-block",
        "description": "Navigation block",
        "type": "styleguide-molecule",
        "license": "GPL-3.0",
        "authors": [
            {
                "name": "Region Halland",
                "email": "webbplatser@regionhalland.se"
            }
        ],
        "require": {}
    }
  • URL: /components/raw/navigation-block/composer.json
  • Filesystem Path: components/Molecules/navigation-block/composer.json
  • Size: 301 Bytes
  • Content:
    /// Molecule - Navigation block
    // --- Base settings ---
    $NAVIGATION-BLOCK--MAIN-COLOR: $base3;
    $NAVIGATION-BLOCK--HIGHLIGHT-COLOR: $base3-light;
    $NAVIGATION-BLOCK__ICON--HIGHLIGHT-COLOR: $base3-dark;
    // --- End of base settings ---
    
    $navigation-block--min-height: 3.75em; //60px
    $navigation-block--width: 100%; // false - 100% is useful when using in grid system
    $navigation-block--min-width: false; //false
    $navigation-block--max-width: false; //false
    
    $navigation-block--border: $border-thin--standard $NAVIGATION-BLOCK--MAIN-COLOR;
    $navigation-block--border-radius: $border-radius--medium; //6px
    $navigation-block--padding: 0.875em; //14px
    $navigation-block--background-color: $grey-lightest;
    
    $navigation-block__header-round-button--border: false;//false
    $navigation-block__header-round-button--background-color: $NAVIGATION-BLOCK--MAIN-COLOR;//false
    $navigation-block__header-round-button--icon-color: $white;//false
    
    $navigation-block__header-round-button--hover-active: true; //false
    $navigation-block__header-round-button--border-hover-active: false;//false
    $navigation-block__header-round-button--background-color-hover-active: $NAVIGATION-BLOCK--HIGHLIGHT-COLOR;//false
    $navigation-block__header-round-button--icon-color-hover-active: $NAVIGATION-BLOCK__ICON--HIGHLIGHT-COLOR;//false
    
    $navigation-block__header-round-button--cursor: false; //false
    
    $navigation-block__header-title--margin: 0.18em 0 0 0.5em;
    $navigation-block__header-title--margin-large: 0.05em 0 0 0.5em;
    
    $navigation-block__header-title-link--color: false;
    $navigation-block__header-title-link--font-size: $font-size--large; //18px
    $navigation-block__header-title-link--font-size-large: $font-size--xl; // 20px
    $navigation-block__header-title-link--font-weight: bold;
    $navigation-block__header-title-link--line-height: $line-height--xl;
    $navigation-block__header-title-link--word-break: break-word;
    
    $navigation-block__description--margin: .5em 0 0 0; //false
    $navigation-block__description-text--color: false;
    
    // Effects :hover - :active - :focus - :focus-within
    $navigation-block-effect__box-outside: true; //Activating outside effect - ONLY true or false
    $navigation-block-effect__content-inside: true; //Activating inside effect - ONLY true or false
    $navigation-block-effect--border: $border-thin--standard $NAVIGATION-BLOCK--MAIN-COLOR;
    $navigation-block-effect--box-shadow: $box-shadow--standard $color-shadow; //Using for :hover and :active
    $navigation-block-effect-focus--box-shadow: $box-shadow--standard $color-shadow; //Using for :focus and :focus-within
    $navigation-block-effect--title-text-color: false;
    $navigation-block-effect--title-text-decoration: underline; //Only underline or none
    $navigation-block-effect--description-text-color: false;
    $navigation-block-effect--description-text-decoration: none; //Only underline or none
    
  • URL: /components/raw/navigation-block/navigation-block.settings.scss
  • Filesystem Path: components/Molecules/navigation-block/navigation-block.settings.scss
  • Size: 2.8 KB

Navigation block

  • Komponents prefix: rh-navigation-block*
  • Filplats: /components/Molecules/navigation-block

Ändringslogg

1.0.0.20200128 (2020-01-28)

  • Globala variabler används.

1.0.0.20200123 (2020-01-23)

  • Sökväg till Atoms/button-circle justerad efter namnbyte.

1.0.0.20191218 (2019-12-18)

Förbättring av:

  • Enklare HTML struktur.
  • Bättre beteenden :focus och :focus-within och effekterna genereras från globala @mixin.

Versionen kommer att fungera som det ska med Stilguiden version ≥ 11.1.0

1.0.0.20191122

Flyttat till gitrepo

1.0.0-201911071500 (2019-11-07)

  • Förbättring för beteenden: :active, :hover, :focus-within. Förbättringen finnas i Stilguide version ≥ 9.0.3:
    • Nu kan man också justera beteende av icon.
    • IE11 får bättre beteende.

1.0.0-201911041600 (2019-11-07)

  • Använda ny version av @mixin create-clickable-element-effect. Komponenten stödjer två alternativ och finnas i Stilguide version ≥ 9.0.2:
    • effect-outside
    • effect-inside

1.0.0-201910221700 (2019-10-22)

  • Förbättringen är baserad på Stilguides version 7.2.0 och kommer finnas i nästa version > 7.2.0
  • Användning av circle-button.