Гибкое пространство между элементами

У меня есть два гибких элемента, и мне нужно пространство между ними, Я добавил правое поле между ними, и это выглядит великолепно, но проблема в том, что когда экран становится самым маленьким, второй элемент опускается до новой строки, а у меня избыточное поле вправо: 30 пикселей, и это выглядит не очень хорошо. Как я могу это решить: Гибкое пространство между элементами

Гибкое пространство между элементами

Я не хочу использовать событие изменения размера окна, потому что если вы откроете этот пользовательский интерфейс на мобильном устройстве, то вначале у вас будут эти два элемента в отдельных строках.

.item-target-scale {
        flex: 3;
        min-width: 186px;
        display: inline-block;
        text-align: left;
        margin-right: 30px;
      }

      .item-target-bar {
        flex:1;
        min-width: 100px;
        display: inline-block;
      }
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
0
0
122
2

Ответы 2

Я бы предложил обернуть эти два элемента в родительский элемент и использовать свойство justify-content: space-between.

.parent {
  display: flex;
  justify-content: space-between;
  width: 50%;
}

.child {
  height: 20px;
  width: 50px;
  background: red;
}
<div class = "parent">
  <div class = "child child1">
  </div>
  <div class = "child child2">
  </div>
</div>

Для этого используйте медиа-запрос. Осмотрите свою страницу и узнайте, когда происходит разрыв строки (используйте инструменты разработчика, он дает точную ширину области просмотра в пикселях).

    @media screen and (min-width:'calculated'px)
    {
        .item-target-scale {
        margin-right: 0px;
    }
}

Надеюсь, это то, что вам нужно.

Обновлено:

Используйте это, если размер элемента не фиксирован:

function myFunction(){
var i=document.getElementById("target1").offsetWidth+document.getElementById("target2").offsetWidth+50;
var w = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);
if (i>=w)
{
	document.getElementById("target1").style.marginRight = "0px";
}
else
{
	document.getElementById("target1").style.marginRight = "30px";
}
}
.item-target-scale {
        flex: 3;
        min-width: 186px;
        display: inline-block;
        text-align: left;
        margin-right: 30px;
        background:green;
      }

      .item-target-bar {
        flex:1;
        min-width: 100px;
        display: inline-block;
        background:red;
      }
<body onresize = "myFunction()" onload = "myFunction()">

<div class = "item-target-scale" id = "target1">
dwdwdwdwd
</div>
<div class = "item-target-bar" id = "target2">
eegerg
</div>

</body>

Мне понадобится HTML-код, чтобы получить остальную часть размера элемента, но это можно сделать, проверив. Итак, просто добавьте оставшуюся ширину элемента в i.

Рад помочь :) Примите его, если это кажется правильным решением вашей проблемы.

Arex 27.06.2018 12:40

Как насчет того, чтобы меньше всего становился элемент, а не окно, измените размер элемента ... медиа-запрос здесь не будет работать

Ortal Blumenfeld Lagziel 27.06.2018 13:40

Как бы вы изменили размер изображения? Непосредственно в коде или его можно растянуть на веб-странице? Вы дали ему минимальную ширину 186 пикселей, поэтому я предполагаю, что изменение размера изображения будет происходить с помощью кода ...

Arex 27.06.2018 14:02

@OrtalBlumenfeldLagziel Скажите, пожалуйста, это то, что вам нужно.

Arex 28.06.2018 11:22

Другие вопросы по теме