Silcore Character Sheet

Rendering Silcore Sheet using Flexbox and pure CSS.

by Troy Alford

HTML

<div class="cs sheet silcore">
  <div class="row title">Arual Kovak</div>
  <div class="row">
    <div class="col">
      <div class="row header">Portrait</div>
      <div class="picture" style="/*background-image: url(http://lorempixel.com/425/550/people)*/"></div>
      <div class="row header">Attributes</div>
      <div class="row two-up traits">
        <div class="row entry">
          <div class="name">Agi</div>
          <div>1</div>
        </div>
        <div class="row entry">
          <div class="name">App</div>
          <div>0</div>
        </div>
        <div class="row entry">
          <div class="name">Bld</div>
          <div>1</div>
        </div>
        <div class="row entry">
          <div class="name">Cre</div>
          <div>0</div>
        </div>
        <div class="row entry">
          <div class="name">Fit</div>
          <div>1</div>
        </div>
        <div class="row entry">
          <div class="name">Inf</div>
          <div>0</div>
        </div>
        <div class="row entry">
          <div class="name">Kno</div>
          <div>0</div>
        </div>
        <div class="row entry">
          <div class="name">Per</div>
          <div>0</div>
        </div>
        <div class="row entry">
          <div class="name">Psy</div>
          <div>1</div>
        </div>
        <div class="row entry">
          <div class="name">Wil</div>
          <div>2</div>
        </div>
      </div>
      <div class="row header">Secondary Traits</div>
      <div class="row two-up traits">
        <div class="row entry">
          <div class="name">Str</div>
          <div>1</div>
        </div>
        <div class="row entry">
          <div class="name">Hea</div>
          <div>1</div>
        </div>
        <div class="row entry">
          <div class="name">UD</div>
          <div>5</div>
        </div>
        <div class="row entry">
          <div class="name">Flesh Wnd</div>
          <div>18&nbsp;(38)</div>
        </div>
        <div...

CSS

/* Generic Sheet Rules */
@import url(https://fonts.googleapis.com/css?family=Ubuntu);
.cs.sheet,
.cs.sheet * {
  box-sizing: border-box;
}
.cs.sheet {
  align-content: flex-start;
  border: 0;
  box-shadow: 1px 1px 15px #eeeeee, -1px -1px 15px #eeeeee;
  display: flex;
  flex-flow: row wrap;
  height: 11in;
  width: 8.5in;
  padding: .25in;
  margin: .5in auto;
}
.cs.sheet > .row > * {
  margin: 5px;
}
.cs.sheet .row,
.cs.sheet .col {
  display: flex;
}
.cs.sheet .row {
  align-items: flex-start;
  align-content: flex-start;
  flex: 1 1 calc(90%);
  flex-flow: row wrap;
}
.cs.sheet .col {
  flex: 1 1 calc(20%);
  flex-flow: column wrap;
}
.cs.sheet .col.c-2 {
  flex: 1 1 calc(50%);
}
.cs.sheet .col.c-3 {
  flex: 1 1 auto;
}
/* Silcore Specific Rules */
.cs.silcore .row .header {
  border-width: 0 0 1px 0;
  -webkit-border-image: linear-gradient(left, #003366, #2eccfa 40%, #ffffff) 100% 1;
  -khtml-border-image: linear-gradient(left, #003366, #2eccfa 40%, #ffffff) 100% 1;
  -moz-border-image: linear-gradient(left, #003366, #2eccfa 40%, #ffffff) 100% 1;
  -o-border-image: linear-gradient(left, #003366, #2eccfa 40%, #ffffff) 100% 1;
  border-image: linear-gradient(left, #003366, #2eccfa 40%, #ffffff) 100% 1;
  color: #333;
  flex: 1 1 100%;
  font-family: Ubuntu;
  font-size: 0.8rem;
  font-weight: bold;
  height: 30px;
  min-height: 30px;
  max-height: 30px;
  padding: 8px 0 8px 0;
  text-align: left;
  text-shadow: 2px 1px #ddd;
}
.cs.silcore .row .header.row {
  border-width: 0 0 3px 0;
  font-size: 1.1rem;
  margin: 0 0 8px 0;
}
.cs.silcore .row:not(.two-up) > .entry:not(.header):nth-child(even) {
  background-color: #f0f9f9;
}
.cs.silcore .row.title {
  border-bottom: 1px solid;
  font-size: 1.5rem;
  font-weight: bold;
  justify-content: flex-end;
  padding: 8px;
}
.cs.silcore .picture {
  border: 20px solid #eee;
  box-shadow: -1px -1px 0 0 rgba(0, 0, 0, 0.7), 1px 1px 0 0 rgba(0, 0, 0, 0.7), 1px -1px 0 0 rgba(0, 0, 0, 0.7), -1px 1px 0 0 rgba(0, 0, 0, 0.7),...