Jump to content
  • 0

Как сделать растяжимый фон треугольник без картинок


hike
 Share

Question

Здравствуйте!

Увидела в интернете множество рецептов как сделать элемент с нулевой шириной и высотой и широкими прозрачными границами, чтобы получился треугольник, например здесь https://css-tricks.com/examples/ShapesOfCSS/

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

Мне же нужно, чтобы Triangle Top Left тянулся как фоновый рисунок треугольника, только без рисунка, средствами css.

Как это сделать?

Edited by hike
Link to comment
Share on other sites

11 answers to this question

Recommended Posts

  • 0

К сожалению, не подойдет, так как родитель - это блок, а не весь браузер.

Видела, как делают трапецию двумя линейными градиентами.

Может быть, треугольник тоже можно сделать с помощью градиентов?

Link to comment
Share on other sites

  • 0

Если, например, бутстрап и блок в .container - оно не относительно браузера. Я сам так и не нашел грамотного решения. Может не сильно и искал - проще картинку воткнуть. Может тут кто что подскажет

Link to comment
Share on other sites

  • 0
  On 1/11/2018 at 6:08 PM, wwt said:
background-image: url('data:image/svg+xml;utf8,<svg ...> ... </svg>');

можно подробнее: что вместо многоточия написать для прямоугольного треугольника?

  On 1/11/2018 at 2:33 PM, Vlad_P said:

ну да, тоже верно. а в случае container-fluid менее 1200 использовать vw

Expand  

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

Expand  

 

Link to comment
Share on other sites

  • 0

Я так понимаю, у вас макс. ширина сайта 1200, на экранах свыше этого ширина колонки постоянна. т.е. вы строите треугольник из бордеров, задавая им фикс. значения в пикселях. Для экранов меньшей ширины, если вы используете .container-fluid, ширина колонки будет напрямую зависеть от ширины экрана, а значит вы можете для изменяемых сторон использовать значения в единицах vw. Т.е. что-то вроде:

@media screen and (max-width: 1199px) {
    .ex::after {border-top: 95vw;}
}

Если я правильно понял вашу ситуацию

Link to comment
Share on other sites

  • 0

Я треугольник делаю через трансформацию. SkewX, Y, делать блок обертку с оверфлов хидден, а внутри трансформированный блок. 

А размеры задавать через относительные единицы wv, wh или %

Link to comment
Share on other sites

  • 0
  On 1/11/2018 at 11:14 PM, hike said:

можно подробнее: что вместо многоточия написать для прямоугольного треугольника?

Expand  

Если я верно понял что вам надо https://jsfiddle.net/kvoL4zp9/

 

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy