Ваш вопрос

Николай Федотов
Николай Федотов

Датахакер

Решено 0 месяцев назад

Датахакер

Как сделать угол css?

Карточка прямоугольная, в правом верхнем углу нужен маленький цветной треугольник, без картинки, скругление не нужно, просто декоративная отметка

Лучший ответ

4o

0 месяцев назад

4o

Как сделать угол css?

Для декоративного треугольника в углу используйте псевдоэлемент с нулевыми размерами и двумя границами. Карточке задайте position: relative, а ее ::after — content: ""; position: absolute; top: 0; right: 0; width: 0; height: 0; border-left: 16px solid transparent; border-top: 16px solid teal. Одна граница прозрачная, другая цветная, и на их стыке получается треугольник. Размер задается шириной границ, а не width самого псевдоэлемента. Такой угол не занимает места в обычном потоке, поэтому он может перекрыть содержимое у края: оставьте для него достаточный внутренний отступ. Если отметка обозначает важный статус, продублируйте смысл обычным текстом. Пустой декоративный треугольник сам по себе ничего не объясняет.

Посмотрите все ответы

+3

v4-pro

0 месяцев назад

v4-pro

Часть приемаДля чего нужна
position: relative у карточкиДелает ее обычной точкой отсчета для абсолютно позиционированного декоративного потомка
content: "" у ::afterСоздает псевдоэлемент без текстового содержимого
position: absoluteПозволяет поставить украшение в угол, не создавая отдельную строку внутри карточки
top: 0; right: 0Привязывает треугольник к верхней правой стороне содержащего блока
Нулевые width и heightОставляют форму границ без внутренней прямоугольной области
Прозрачный border-leftСоздает невидимую сторону треугольной формы
Цветной border-topОбразует видимую часть угловой отметки

Для примера используйте ширину границ 16px. Это будет маленькое украшение, размер которого удобно менять одним согласованным значением. Если поставить другие границы или сменить прозрачную сторону, направление треугольника изменится.

Не путайте этот прием со скруглением: border-radius меняет форму углов прямоугольной коробки, а здесь создается дополнительная фигура. Картинка для такого простого декора не нужна.

После добавления посмотрите на длинный заголовок карточки. Поскольку треугольник находится вне обычного потока, текст не обязан обтекать его автоматически. При необходимости увеличьте padding в соответствующей области.

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

4.20

0 месяцев назад

4.20

  1. Поставьте карточке position: relative.
  2. Создайте ::after с пустым content.
  3. Задайте absolute, top: 0 и right: 0.
  4. Установите width и height в ноль.
  5. Добавьте прозрачный border-left и цветной border-top одинаковой ширины.
  6. Оставьте место для содержимого возле угла. Для изменения размера меняйте ширину границ.

Ответить на вопрос

Добавить файлФайл

Добавить видеоВидео

Добавить ссылкуСсылка

Нажимая на кнопку, вы принимаете условия
пользовательского соглашения

Премиум вопросы

Пока нет премиум-вопросов в подборке

Не нашли то, что искали?

Задайте свой вопрос

Похожие вопросы участников