Проблема с границей 1px для img

Итак, у меня проблема с границей 1px для img. Между ними странное расстояние, и оно становится еще хуже при масштабировании (см. Код). Я понятия не имею, откуда это и как это исправить.

Мой HTML:

<article class = "comment">
    <div class = "comment__image-block">
      <img class = "comment__img" src = "https://i.imgur.com/dSEAOsy.jpg" alt = "Avatar" title = "Avatar">
    </div>
  </article>

Мой SCSS:

 .comment {
  &__image-block {
    padding: 0;
    float: left;
    margin-right: 20px;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    &:before {
      content: ' ';
      display: block;
      background-color: white;
      width: 60%;
      height: 10px;
      position: absolute;
      right: -11px;
      top: -2px;
      outline: 1px solid red;
      transform: skewX(53deg);
    }
  }
  &__img {
    width: 80px;
    height: 80px;
    border: 1px solid red;
  }
}

Ссылка на CodePen

Изображение:

Проблема с границей 1px для img

удалить content: ' '; из &:before

user2796515 16.07.2018 20:51
Улучшение производительности загрузки с помощью 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 страниц, которые помогут...
2
1
1 004
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

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

&__img {
    width: 80px;
    height: 80px;
    border: 1px solid red;
    box-sizing: border-box;
 }

Надеюсь, у вас это сработает! Может быть, есть способ получше, потому что в этом случае граница ставится по краю изображения, но другого пути я не знаю.

Спасибо за ваш ответ, но, к сожалению, это не помогает, проблема все еще присутствует даже с box-sizing: border-box;

Bogdan Morozov 16.07.2018 20:31

@BogdanMorozov, это странно, как по мне, это работает, по крайней мере, в вашем примере кода и с использованием google chrome ...

Danielius 16.07.2018 20:33

Какой браузер вы используете? В Chrome проблема решена. В Firefox даже не было проблем (по крайней мере, для меня).

Dirk J. Faber 16.07.2018 20:56

В Microsoft Edge у меня тоже проблема решена.

Danielius 16.07.2018 20:59

Последняя версия хрома

Bogdan Morozov 16.07.2018 21:05

@BogdanMorozov Может это кеш? Сомневаюсь, но кто знает? Попробуй его очистить.

Danielius 16.07.2018 21:07

Я только что наткнулся на ту же проблему с моим изображением:

.overlay-item img {
    width: 568px;
    height: 253px;
    border: 1px solid #555;
}

Исправление заключалось в добавлении 1px большей ширины и box-sizing: border-box;, поскольку без этого еще одного пикселя граница не держалась слева, а не справа. Действительно своеобразное поведение.

.overlay-item img {
    width: 569px;
    height: 253px;
    border: 1px solid #555;
    box-sizing: border-box;
}

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