<style>
body {
    width: 600px;
    font: 18px/1 Ahem;
}

#background {
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: -1;
    width: 200px;
    height: 200px;
    background: lightgreen;
}

#triangleLeft {
    width: 200px;
    height: 200px;
    float: left;
    -webkit-shape-outside: polygon(0 0, 100% 50%, 0 100%);
    -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
    shape-margin: 4px;
    background-color: yellow;
}
</style>

<div id="triangleLeft"></div>Although the Culture was originated by humanoid species, subsequent interactions with other civilizations have introduced many non-humanoid species into the Culture (including some former enemy civilizations), though the majority of the biological Culture is still pan-human. Little uniformity exists in the Culture, and its citizens are such by choice, free to change physical form and even species (though some stranger biological conversions are irreversible, and conversion from biological to artificial sentience is considered to be what is known as an Unusual Life Choice). All members are also free to join, leave, and rejoin, or indeed declare themselves to be, say, 80% Culture.

<script src="../../../resources/js-test.js"></script>
<script>
    var sel = window.getSelection();
    sel.removeAllRanges();
    // select part of the polygon, not the text
    eventSender.mouseMoveTo(80, 100);
    eventSender.mouseDown();
    eventSender.mouseMoveTo(140, 100);
    eventSender.mouseUp();
    shouldBe('sel.toString()', '""');

    // select 'other' using select drag.
    sel.removeAllRanges();
    eventSender.mouseMoveTo(80, 50);
    eventSender.mouseDown();
    eventSender.mouseMoveTo(260, 50);
    eventSender.mouseUp();
    // verify that 'other' was selected
    shouldBe('sel.toString()', '"originated"');
</script>
