Задать вопрос
  • Как с помощью css располагать так блоки?

    origami1024
    @origami1024
    went out for a night walk
    1) flex-direction: column
    2) flex-wrap: wrap
    3) order 2му и 3му поменять местами

    https://codepen.io/origami1024/pen/QWLgKWG
    Ответ написан
    4 комментария
  • Как реализовать данную верстку на сайте?

    SmthTo
    @SmthTo Куратор тега CSS
    Все перепёлки мира будут оплакивать мою смерть.
    Если вы о линиях, то я для одного ответа тут уже делал :))


    Можно, конечно, просто картинкой на задний фон поставить эти круги.

    А ежели вы о вёрстке всего блока — то это уже задание, а не вопрос.
    Ответ написан
    7 комментариев
  • Как сделать фаску на div блоке?

    Ankhena
    @Ankhena Куратор тега CSS
    Нежно люблю верстку
    В связи с тем, что автор нашел скругления в своем макете, вариант с SVG:


    Например, так
    Для скруглений на CSS еще пошаманить с https://jsfiddle.net/xt1chyvn/
    Либо псевдоэлементом с градиентом или бордером, если фон цветом (который голубой у вас), а не картинкой.
    Ответ написан
    4 комментария
  • Кроссбраузерная сетка?

    RAX7
    @RAX7
    Ответ написан
    Комментировать
  • Кроссбраузерная сетка?

    delphinpro
    @delphinpro Куратор тега CSS
    frontend developer
    Один общий блок с картинкой,
    внутри несколько блоков с белыми рамками без фона.
    Внутренние блоки флексами.
    Ответ написан
    Комментировать
  • Background css?

    @Lord_Dantes
    Потому-что у изображения не хватает ширины и оно заново заполняет блок.

    Пофиксить
    background-repeat: no-repeat;
    background-size: cover;
    Ответ написан
    Комментировать
  • Чем заменить position: sticky?

    profesor08
    @profesor08 Куратор тега CSS
    Ничего сложного в том, чтоб написать свою реализацию тут нет. Надо лишь понимать как складывать, умножать, делить и вычитать, чтоб посчитать позицию плавающего блока относительно контейнера.

    Немного кода для размышления, jquery, но легко и на нативный перевести, ничего не изменится
    function constrain(n, low, high) {
        return Math.max(Math.min(n, high), low);
      }
    
    let padding = 218;
            let wrapperRect = $wrapper[0].getBoundingClientRect();
            let offset = parseInt($nav.attr("data-sticky-offset"));
    
            if (wrapperRect.top < offset) {
              let y = constrain(window.pageYOffset, 0, $target.height() - $nav.height() + $target.offset().top - offset);
    
              $nav.addClass("is-floating");
    
              if (y === $target.height() - $nav.height() + $target.offset().top - offset) {
                $nav.addClass("on-end-point");
              }
              else {
                $nav.removeClass("on-end-point");
              }
    
              $nav.css({
                width: $nav.parent().width() + "px"
              });
            }
            else {
              $nav.removeClass("is-floating");
              $nav.attr("style", "");
            }
    Ответ написан
    Комментировать
  • Чем заменить position: sticky?

    liqrizz
    @liqrizz
    лол
    js offset.top windows.scrollTop проверяешь например 80px от верха вьюпорта и делаешь position fixed
    Ответ написан
    Комментировать
  • Можно ли изменить data атрибут в html через css?

    notiv-nt
    @notiv-nt
    Как ваше ничего? Да, моё тоже
    Нет
    Ответ написан
    Комментировать
  • С помощью флекса вообще возможно распологать фото с бэкраундами?

    hzzzzl
    @hzzzzl
    навскидку по-быстрому
    как-то так?
    https://jsfiddle.net/gw70yp9b/1/

    sec6 section img{
        background: url(/images/157195/kvadratikshema1.png#size_98x98) center no-repeat;
        padding: 98px;
      }


    тут ты задаешь бакграунд всем картинкам, а хочешь бакграунд с квадратиком только картинкам, которые внутри дива (.sec6 section div img)
    Ответ написан
    Комментировать
  • Как заполнить input текстом из li?

    @tltary
    <input type="text" name="city" value="" id="input-city"  />
    <ul>
      <li data-value="Город 1" class="js-item">
        <a href="#">Город 1</a>
      </li>
      <li data-value="Город 2" class="js-item">
        <a href="#">Город 2</a>
      </li>
      <li data-value="Город 3" class="js-item">
        <a href="#">Город 3</a>
      </li>
    </ul>

    const inp_city = document.querySelector('#input-city');
    const li_item = document.querySelectorAll('.js-item');
    
    for (let i = 0;i < li_item.length;i = i + 1) {
    	li_item[i].addEventListener('click',function () {
      	inp_city.value = this.dataset.value;
      }, false)
    }


    https://jsfiddle.net/ruetz08q/14/
    Ответ написан
    1 комментарий
  • Как заполнить input текстом из li?

    @Sashqa
    $('li').click(function(e) {
      e.preventDefault();
      let text = $(this).attr('data-value')
      $('input').val(text)
    })


    $('li').click(function(e) {
      e.preventDefault();
      let text = $(this).find('a').text();
      $('input').val(text)
    })
    Ответ написан
    1 комментарий
  • Не получается поставить рядом с в CSS?

    rockfeeler
    @rockfeeler
    Фронтендер, дизайнер, верстальщик-перфекционист
    Ну раз уж все элементы засунуты в form, то и флекс нужно применять к form:

    Ответ написан
    Комментировать
  • Как выровнять блок по центру, если его родитель меньше?

    dicem
    @dicem
    .box1 {
    	display: flex;
    	justify-content: center;
    	align-items: center;
    	position: absolute;
    	width: 50%;
    	height: 50%;
    	top:0;left:0;bottom:0;right:0;
    	margin:auto;
    	border:1px solid #333333;
    
    }
    
    .box2 {
    	width: 120%;
    	height: 120%;
    	flex-shrink: 0;
    	background: blue;
    	opacity:0.5;
    }
    Ответ написан
    Комментировать
  • Как отсортировать меню по возрастающей?

    0xD34F
    @0xD34F Куратор тега JavaScript
    function sortChildren(el, key) {
      el.append(...Array
        .from(el.children, n => [ n, key(n) ])
        .sort((a, b) => a[1] - b[1])
        .map(n => n[0])
      );
    }
    
    
    sortChildren(document.querySelector('.menu'), n => +n.dataset.num);
    Ответ написан
    1 комментарий
  • Как правильно работать с PSD макетами под ретиной?

    SmthTo
    @SmthTo Куратор тега Вёрстка
    Все перепёлки мира будут оплакивать мою смерть.
    Retina-макетов не бывает. Retina — не более чем маркетинговое название экранов с высоким разрешением (300+ px на дюйм). Retina могут быть только ресурсы, например, картинки, которые будут иметь в несколько раз большее, чем целевой макет, разрешение, чтобы попасть в пиксельную сетку реального разрешения.

    Вы же верстает не под размеры экрана в физических px, а под viewport с его «виртуальными» px, которые получаются из:
    [физическое разрешение] : [степень масштабирования]

    Чем выше разрешение при равных размерах экрана — тем всё мельче, если масштаб 1:1. Поэтому принято увеличивать масштаб, иначе всё мелкое-мелкое. Таким образом достигается высокая чёткость + адекватные размеры элементов на экране (эффект retina).

    Доп. инфо про правильное масштабирование
    Кстати, если используется масштабирование, то желательно, чтобы масштаб вообще был кратен двум (x2, x4…) для попадания в пиксельную сетку экранов, ибо так получаем меньшее влияния субпиксельного сглаживания, но это задача производителей устройств, а не нас с вами.

    На данный момент в том же iPhone XS используется нечётное масштабирование x3 не потому, что так хорошо, а потому что для нормального масштаба x4 нужно очень сильно увеличить разрешение экрана, а это дорого и не очень энергоэффективно.

    А на OLED-экранах ещё есть богомерзкий PenTile, из-за которого контрастные контуры выглядят пиксельно даже на очень высоком разрешении…

    Так, старый iPhone 6 и iPhone XS имеют одинаковый размер viewport (375px), но реальное разрешение различается очень сильно: 750px против 1125px. Достигается это с помощью масштаба: x2 у iPhone 6 и x3 у iPhone XS.

    Макет должен быть 1:1 к целевому размеру viewport, а не к физическому разрешению экрана. Потому что после всех манипуляций с масштабированием у нас остаётся четкое значение размера viewport, именно на него и надо ориентироваться.

    Наличие или отсутствие retina в этом деле вам совершенно не важно, ибо вы верстает под чёткие размеры viewport, которые могут быть одинаковыми на устройствах с совершенно разными физическими разрешениями: например, ширину viewport 375px (как у iPhone XS) можно достичь на древнем VGA-экране, сжав в нём окно браузера до этих 375px.


    Зачем тогда вообще retina-ресурсы
    Retina-ресурсы по сути бывают только растровыми, ибо векторные картинки, шрифты и вёрстка в целом масштабируются без потери качества. Этого нельзя сказать о всяких JPG'ах, поэтому если вы на iPhone 6 загрузите картинку 375px по ширине — да, она будет равна размеру viewport, но будет выглядеть размыто, потому что физическое разрешение экрана — 750px, а картинка по сути масштабируется в два раза, теряя в визуальном качестве.

    Если у вас в макете текст имеет 15px, то и делайте его 15px. Надеюсь, кстати, что макет вам делал не совсем отбитый дизайнер, который не забыл поставить px вместо pt в макете для текстов. Иначе — либо подгонять на глаз, либо пытаться конвертировать их в px, исходя из выбранном плотности печати в настройках документа макета. Ибо pt — это относительная единица для печати, в web её нет.

    Есть дизайнеры-уникумы, которые делают макеты в два раза больше необходимых размеров, типа, блин, retina x2. А если у меня retina x3 — что мне тогда делать? Или же делают макеты вообще неведомых размеров. Да и в Photoshop'e web-макеты в 2019-м году уже делать не надо, конечно.

    В CSS и HTML есть методы детекции наличия масштаба, чтобы грузить нужный ресурс в зависимости от его степени.
    UPDATE. С макетом полный порядок, тут уже дело в навыках верстки.
    Ответ написан
    6 комментариев
  • Изменение названия сраницы, как сделать?

    NikitOS_MV
    @NikitOS_MV
    Король шутов
    Заголовок страницы менять только через js получится, по другому не изобрели вроде :)
    Ответ написан
    2 комментария