metanorma/isodoc

View on GitHub
lib/isodoc/base_style/blocks.scss

Summary

Maintainability
Test Coverage
@import 'defaults';

@mixin blockTitle() {
  font-weight: 700;
  font-size: 1em;
  text-align: center;
}

@mixin monospaceBlockStyle() {
  font-family: $monospacefont;
  font-variant-ligatures: none;
}

@mixin admonitionBlock() {
  .AdmonitionTitle {
    @include blockTitle();
  }
}

@mixin recommendationBlock() {
  .RecommendationTitle {
    @include blockTitle();
  }
}

@mixin listBlock() {
  .ListTitle {
    @include blockTitle();
    text-align: left;
  }
}

@mixin figureBlock() {
  .FigureTitle, .figure-title {
    @include blockTitle();
  }

  > img, > svg {
    margin-left: auto;
    margin-right: auto;
    display: block;
    max-width: 100%;
    height: auto;
  }

  line-height: 1.6em;
  padding: 1.5em;
  margin: 2em 0 1em 0;
  overflow: auto;
}

@mixin sourceBlock($colorBg, $colorFg: null) {
  @include monospaceBlockStyle();

  @if $colorFg {
    color: $colorFg;
  }

  background-color: $colorBg;
  font-size: $monospacefontsize;
  line-height: 1.6em;
  padding: 1.5em;
  margin: 2em 0 1em 0;
  overflow-y: auto;
  overflow-x: scroll;
}

@mixin pseudocodeBlock($colorBg, $colorFg: null) {
  .SourceTitle {
    @include blockTitle();
  }

  @if $colorFg {
    color: $colorFg;
  }

  background-color: $colorBg;
  font-size: $monospacefontsize;
  line-height: 1.6em;
  padding: 1.5em;
  margin: 2em 0 1em 0;
  overflow: auto;
}

@mixin exampleBlock($colorBg, $colorText, $padding: .5em, $offsetContent: 1.5em) {
  background-color: $colorBg;

  padding: $padding;
  margin: 2em 0 1em 0;
  text-align: left;

  p {
    margin: 0;
  }

  @if $colorText {
    color: #424242;
  }

  @if $offsetContent {
    padding-left: $padding + $offsetContent;
  }

  .example-title {
    font-weight: 700;
    text-transform: uppercase;

    @if $offsetContent {
      margin-left: -$offsetContent;
    }
  }
}

@mixin formulaBlock($colorBg) {
  background-color: $colorBg;
  padding: 1.5em;
  margin-top: 2em;
  text-align: center;
}

@mixin blockquoteBlock($colorBg, $rightAlignAttribution: false) {
  background-color: $colorBg;
  font-style: italic;
  width: 80%;
  padding: 1.5em;
  margin-top: 2em;
  margin-left: auto;
  margin-right: auto;

  @if $rightAlignAttribution {
    .QuoteAttribution {
      text-align: right;
    }
  }
}