创建底部响应箭头 [英] Create bottom responsive arrow

查看:21
本文介绍了创建底部响应箭头的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要创建带有向下箭头的网格.见下图:

问题是由于.col-xs-3,div 具有可变宽度.如何为箭头(:after 元素)提供适当的宽度,以便它仍然具有响应性?

我的 CSS:

.grid-arrow::after {内容: " ";显示:块;宽度:0;高度:0;边框顶部:47px 实心透明;边框底部:47px 实心透明;左边框:40px 实心 rgb(173, 173, 173);位置:绝对;/* 顶部:50%;*/边距顶部:-37px;/* margin-left: 1px;*/左:50%;z-索引:3;-webkit-transform:旋转(90度);-ms-transform:旋转(90 度);变换:旋转(90度);}

我的 HTML:

<div>一些文字

解决方案

正如@ochi 所指出的,已经有一个解决方案可能对你有用.

把它带回你的代码,它会是这样的:

HTML:

<div>一些文字.

CSS:

.grid-arrow {位置:相对;文本对齐:居中;背景颜色:红色;行高:2em;边框顶部:300px 实心 #fff;顶部:-300px;}.grid-arrow::after {内容: "";位置:绝对;左:0;背景颜色:红色;填充底部:50%;宽度:57.7%;z-索引:-1;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;变换原点:0 0;-webkit-transform:旋转(-30度)skewX(30度);;-ms-transform:旋转(-30度)skewX(30度);变换:旋转(-30度)skewX(30度);}

参见 JsFiddle.

I need to create grid with a down arrow. See the image below:

The problem is that the div has a variable width because of .col-xs-3. How can I give the arrow (:after element) the appropriate width so that it will still be responsive?

My CSS:

.grid-arrow::after {
    content: " ";
    display: block;
    width: 0;
    height: 0;
    border-top: 47px solid transparent;
    border-bottom: 47px solid transparent;
    border-left: 40px solid rgb(173, 173, 173);
    position: absolute;
    /* top: 50%; */
    margin-top: -37px;
    /* margin-left: 1px; */
    left: 50%;
    z-index: 3;
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
}

My HTML:

<div class="col-xs-3 advantage grid-arrow">
    <div>
        Some text
    </div>
</div>

解决方案

As pointed out by @ochi, there is already a solution that might work for you.

Bringing it back to your code, it would be something like this:

HTML:

<div class="col-xs-3 advantage grid-arrow">
    <div>
        Some text.
    </div>
</div>

CSS:

.grid-arrow {
    position: relative;
    text-align: center;
    background-color: red;
    line-height: 2em;
    border-top:300px solid #fff;
    top:-300px;
}
.grid-arrow::after {
    content: "";
    position: absolute;
    left: 0;
    background-color: red;
    padding-bottom: 50%;
    width:57.7%;
    z-index:-1;

    -webkit-transform-origin:0 0;
    -ms-transform-origin:0 0;
    transform-origin:0 0;

    -webkit-transform: rotate(-30deg) skewX(30deg);;
    -ms-transform: rotate(-30deg) skewX(30deg);
    transform: rotate(-30deg) skewX(30deg);
}

See JsFiddle.

这篇关于创建底部响应箭头的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
前端开发最新文章
热门教程
热门工具
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆