per-word spans

HTML

<div>
	<button onclick="normal()">normal paragraphs</button>
	<button onclick="spans()">span paragraphs</button>
	<button onclick="fragments()">fragment paragraphs</button>
</div>

JavaScript

const paragraphsText = `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc sed sem id mauris volutpat efficitur vitae vitae nunc. Cras condimentum vulputate ipsum id vulputate. Nullam dui neque, sagittis at sodales eget, malesuada nec lorem. Etiam vulputate lobortis porta. Sed id nisi leo. Vestibulum in mi erat. Nam porttitor lobortis leo, nec aliquam augue lacinia in. Vestibulum non enim odio. Sed mauris erat, vulputate nec dolor sit amet, blandit accumsan ipsum. Suspendisse eu orci posuere libero euismod sagittis. Curabitur non velit bibendum mi blandit pretium. Mauris tortor lectus, sodales nec aliquet sit amet, tristique et purus. Praesent mattis massa sed tellus tincidunt congue. Ut ac dapibus mi. Curabitur ornare aliquam sapien, nec pharetra libero lacinia eu.

Maecenas nec libero vel nibh aliquet ornare. Nulla eu orci nisl. Curabitur eu interdum lacus. Mauris scelerisque elementum nulla, vel finibus lorem varius et. Donec sit amet libero purus. Pellentesque posuere justo dui, vitae imperdiet urna accumsan in. Suspendisse semper sit amet mi vel ullamcorper. Aenean sit amet dictum urna, et sollicitudin ante. Nunc et dignissim mi. Cras fermentum justo in metus finibus tempor. Aliquam tellus tortor, porttitor a mauris a, vestibulum imperdiet elit. Cras cursus volutpat diam. Maecenas lacus lacus, vestibulum sit amet iaculis vestibulum, consequat vitae libero. Quisque varius congue aliquam. Sed id libero tincidunt, euismod mi vel, volutpat felis.

Donec sit amet porta orci. Sed id ante fringilla, efficitur libero id, molestie magna. Aliquam vestibulum, erat eu scelerisque hendrerit, orci felis ultricies arcu, eu blandit nisi enim in neque. Vivamus congue, nisl in lobortis dictum, mauris nibh congue justo, vitae fermentum sem mauris sit amet enim. Proin non sapien porta, ultricies magna ut, luctus justo. Pellentesque odio velit, mattis vitae finibus sed, condimentum quis ex. Morbi non urna convallis, ullamcorper ipsum pulvinar, porttitor sapien....