- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
也许看到上面的标题你们有些人会感到困惑,但正如标题所说,我想使用CSS来实现这个管道设计,我想我可以使用来实现它border
但如何添加如下图所示的圆形元素符号?
为了更容易,我的布局将如下所示:
第一行:图像 1 和文本
第二行:文本和图像 2
第三行:图像 3 和文本
第四行:图像 4
所以这是我想问的一些问题:
我可以使用边框制作这种线条吗?
如何让线条像图 4 之前那样停在中间?
如何使元素符号位于线条中间,即使我们在某些设备中检查它(不包括 576px 左右的移动 View ),也能与线条匹配?
有人可以帮我解决这个问题吗?对于第一个问题,我认为我们可以使用
1. First Row :
border-right: solid 1px blue;
border-bottom : solid 1px blue;
border-bottom-right-radius : 10px;
2. second Row :
border-left: solid 1px blue;
border-bottom : solid 1px blue;
border-bottom-left-radius : 10px;
3. Third Row :
border-right: solid 1px blue;
border-bottom : solid 1px blue;
border-bottom-right-radius : 10px;
4. Fourth Row :
border-left: solid 1px blue;
border-bottom : solid 1px blue;
border-bottom-left-radius : 10px;
width: 50% (?)
编辑 1对于问题一,目前我编写的 CSS 代码如下:
#first-row-left{
border-left: solid 3px blue;
border-bottom: solid 3px blue;
border-bottom-left-radius: 20px
}
#first-row-right{
border-bottom: solid 3px blue;
}
#second-row-left{
border-bottom: solid 3px blue;
}
#second-row-right{
border-right: solid 3px blue;
border-bottom: solid 3px blue;
border-top-right-radius: 20px;
border-bottom-right-radius: 20px
}
#third-row-left{
border-left: solid 3px blue;
border-bottom: solid 3px blue;
border-bottom-left-radius: 20px;
border-top-left-radius: 20px
}
看起来像这样
正如您所看到的,在管道更改行(如从第一行更改为第二行)之前有轻微的遗漏
编辑2我已经为此做了一个 fiddle ,你可以在这里尝试一下:
编辑3基于@Alexwc_,我尝试将他的代码更改为CSS而不是SCSS,但似乎我在这里错过了一些东西
将 @Alexwc_ 转换为 CSS 后的 SCSS:
这是我制作的 fiddle :Check in here
最佳答案
这是一种方法。也许不是最干净的,而且它还没有适应移动设备。
Here is a pen of the work using SCSS.
Here is a pen of the work using CSS. (请注意,我使用 this tool 将 SCSS 转换为 CSS)
注意事项:
CSS:
:root {
--width: 5px;
--border-radius: calc(var(--width) * 2);
--button-width: 30px;
--button-left-pos: -12.5px;
}
.row {
margin: 0 20px;
}
img {
border-radius: 10px;
}
.one, .two, .three, .four {
position: relative;
}
.one::before, .one::after, .two::before, .two::after, .three::before, .three::after, .four::before, .four::after {
position: absolute;
top: var(--button-width);
left: var(--button-left-pos);
content: "";
height: 30px;
width: 30px;
background: black;
border-radius: 100px;
}
.one::after, .two::after, .three::after, .four::after {
width: calc( var(--button-width) / 2 );
height: calc( var(--button-width) / 2 );
background: red;
top: calc(var(--button-width) + var(--button-width) / 4 );
left: -5px;
}
.two::before, .two::after {
right: var(--button-left-pos);
left: initial;
}
.two::after {
right: -5px;
}
.one::after {
width: calc( var(--button-width) / 2 );
height: calc( var(--button-width) / 2 );
background: red;
top: calc(var(--button-width) + var(--button-width) / 4 );
}
.row {
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: 1fr;
grid-template-areas: "left right";
position: relative;
}
.row:last-child {
grid-template-areas: "border ..." "full full";
}
.row .left, .row .right {
padding: var(--button-width);
}
.one .left {
padding-top: 0;
border-left: var(--width) solid;
border-bottom: var(--width) solid;
border-bottom-left-radius: var(--width);
}
.two {
top: calc(var(--width) * -1);
}
.two .right {
border-right: var(--width) solid;
border-top: var(--width) solid;
border-top-right-radius: var(--width);
border-bottom-right-radius: var(--width);
border-bottom: var(--width) solid;
}
.three {
top: calc(var(--width) * -2);
}
.three .left {
border-left: var(--width) solid;
border-top: var(--width) solid;
border-top-left-radius: var(--width);
border-bottom-left-radius: var(--width);
}
.four {
top: calc(var(--width) * -3);
}
.four::before, .four::after {
top: 85px;
}
.four::before {
left: calc(50% - 17.5px);
}
.four::after {
top: 92.5px;
left: calc(50% - 10.5px);
}
.four .border {
height: 200px;
display: block;
border-right: var(--width) solid;
border-top-right-radius: var(--width);
position: relative;
}
.four .border::before {
content: "";
position: absolute;
height: var(--width);
background: black;
top: 0;
width: calc(100% + var(--width));
transform: rotate(180deg);
border-bottom-left-radius: var(--width);
border-top-right-radius: var(--width);
}
.border {
grid-area: border;
}
.full-width {
grid-area: full;
justify-self: center;
}
.left {
grid-area: left;
}
.right {
grid-area: right;
}
HTML:
<div class="row one">
<div class="left">
<img src="https://via.placeholder.com/450x250" alt="">
</div>
<div class="right">
<h1>Heading</h1>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure
dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>
</div>
<!-- one -->
<div class="row two">
<div class="left">
<h1>Heading</h1>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure
dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>
<div class="right">
<img src="https://via.placeholder.com/450x250" alt="">
</div>
</div>
<!-- two -->
<div class="row three">
<div class="left">
<img src="https://via.placeholder.com/450x250" alt="">
</div>
<div class="right">
<h1>Heading</h1>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure
dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>
</div>
<!-- three -->
<div class="row four">
<div class="border border-top"></div>
<div class="full-width">
<img src="https://via.placeholder.com/900x500" alt=""></div>
</div>
<!-- four -->
关于html - 如何在 CSS 中使用边框制作管道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59170127/
我的文本字段需要一个边框,如下图所示。我该怎么做? 最佳答案 试试这些..我希望它能帮助... UITextField *txt=[[UITextField alloc]initWithFrame:C
我尝试通过“GradientDrawable”改变颜色“描边”,但不起作用。 另外,我不知道如何获取 id stroke,并且只更改笔划(我看到 google,所有示例都失败了) 我的 XML 项目
有没有办法如何使用css(理想)来绘制元素边框但只是线条的一部分(在左右边框下方的图像中)? 最佳答案 是的,你可以,像这样,甚至 IE8 也可以这样做: div { position: re
我一直致力于自定义 GUI 框架,因为我无法处理需要通过标记 (XAML) 开发 UI 的托管废话或 native 代码。我正在尝试创建一个使用该 GUI 框架的应用程序原型(prototype),但
以下Microsoft example code包含以下内容: ... ... ... 但是,在运行时,此代码会生成以下数据绑定(bind)
所以基本上我在tex文件的顶部有这样的内容: \setbeamertemplate{footline}{Number \insertframenumber} 这会将“Number ”应用于所有帧的页脚
我不明白为什么我的 HBox 周围没有边框?现在什么也没有发生,除了 eclipse 抛出 IllegalArgumentException 之外,因为我猜是 this.setCenter(hbox)
我正在尝试使用 Colorbox,以便它在加载时打开并提醒访问者 session 注册已开放。我在 Javascript Coder 找到了我正在使用的代码。 我无法让“X”关闭Colorbox来显示
我制作了一个自定义面板,类似于 WrapPanel 但带有列(或类似于 Grid 但项目自动定位在网格中)。 这是它的样子: 我想在我的面板上有一个属性,它在每一列之间划一条线。是否可以在自定义面板上
我正在尝试为我的页面制作边框,但我没有这样做..我的代码是 @drawable/custom_border 我的问题是,黑色设置为整个 View (作为背景),我想要黑色边框而不是黑色背景
我目前正在开发一个小游戏,但我无法让圆圈正确击中左侧和顶部 Canvas 边框。它正确地击中了右侧和底部。 圆可以用 W A S D 移动,并且必须正确地碰到 Canvas 的所有边界 这是代码:ht
我有一个像这样的图像 slider :
如何绘制具有透明度的png图像轮廓(边框)。 就像我们有这张图片: 我们想要这个: 我正在通过 HTML5 创建图像阴影,但无法获得我想要的。我想使用 HTML5 或 jquery 或两者来绘制它,如
在我们的主页上,我们有几个元素作为菜单点。(图片+标题+小说明)。问题是当鼠标悬停时,菜单元素总是有边框。 (即使我隐藏边框)。 你可以看看:www.scf-software.com 图片问题: im
我对 HTML 和 CSS 完全陌生,所以我希望有人能给我指出正确的方向。我试图理解本教程以制作视差滚动网站: http://ihatetomatoes.net/simple-parallax-scr
如何使底部边框正好位于文本框下方? div { border-bottom: solid 2px #354458; } p { color: #ffffff; background-col
本质上,我想应用一个 bottom-border,但我不希望它位于单元格的底部,而是位于死 Angular 。 如何仅使用 CSS 和 HTML(并且不使用图形)做到这一点? 假设单元格/行的高度为
我有一个带有线性渐变的 block (div)。有没有可能让右上角切出一个三 Angular 形? 例如,你有 border-radius 5px 来制作一个圆 Angular 的 block 。但是
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 6 年前。 Improve this qu
我想按照下面的设计图实现下拉按钮。查看下拉菜单在按钮中间后开始。我的问题是按钮具有透明背景以利用根父 div 中的背景图像。 到目前为止,我已经实现了下图。正如我上面所说,我想在 border-rad
我是一名优秀的程序员,十分优秀!