<div class="views-content">
<div class="views-row odd">
<div class="text-field">текст</div>
<div class="image-field">картинка</div>
</div>
<div class="views-row even">
<div class="text-field">текст</div>
<div class="image-field">картинка</div>
</div>
</div>
display:flex;
, элементы выстроятся друг за другом, подобно ячейкам таблицы. В отличие от табличной верстки, flexbox гораздо гибче и позволяет дополнительные манипуляции (см., например, https://css-tricks.com/snippets/css/a-guide-to-flexbox/ ). <meta name="viewport" content="width=device-width, initial-scale=1.0">
@media screen and (max-width: 576px) {
...
}
/*css код внутри этих фигурных скобок применится только для ширины окна 576px и меньше*/
/*есть смысл создать несколько таких правил для разных разрешений*/
а можно вообще inline-block.