JSFiddle - React, Tailwind, and code Playground

HTML

<body style="max-width: 500px; padding-left: 80px; padding-right: 20px;">
    <p>Предсказуемость непредсказуема. Предсказуемость непредсказуема. Предсказуемость непредсказуема. Предсказуемость непредсказуема. Предсказуемость <em data-ref="1">непредсказуема и недоказуема</em>. Предсказуемость непредсказуема. Предсказуемость непредсказуема. Предсказуемость совсем ни разу не  <em data-ref="2, 3, 4">непредсказуема</em>. Предсказуемость непредсказуема. Предсказуемость непредсказуема. Предсказуемость непредсказуема. </p>
    
    <p>Однако, здравствуйте.</p>
    
    <figure>
      <figcaption>
          A cute cat
          <span class="subtitle">is in the picture</span>
      </figcaption>
      <img src="http://lorempixel.com/350/250/cats" alt="A cute Kitten">      
    </figure>            
</body>

CSS

body {
  font-family: "Times New Roman", Serif;
}

em {
  text-decoration: underline;
  text-decoration-color: #f0c000;
}

em::after {
  content: "[" attr(data-ref) "]";
  color: #f0c000;
  font-style: normal;
  
  position: absolute;
  left: 0;
  width: 80px;
  text-align: right;
}

figure {
  position: relative;
}

  figure img {
    width: 100%;
    /* http://xiper.net/collect/html-and-css-tricks/content/img-in-the-block */
    display: block;
  }

  figure figcaption {
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    
    padding: 5px;
    
    color: #fff;
    font-size: 1.5em;
    background-color: rgba(0, 0, 0, 0.5);
  }
  
    figure figcaption span {
      display: block;
      color: #eee;
      font-size: 0.6em;
    }