Answers:
<div>
在您希望该行显示在旁边的标记周围放置一个标记,并使用CSS对其进行样式设置:
.verticalLine {
border-left: thick solid #ff0000;
}
<div class="verticalLine">
some other content
</div>
display:inline-block
否则它不会很好地与其他内联元素相邻。
您可以使用<div>
样式完全像您希望该行显示的空白:
HTML:
<div class="vertical-line"></div>
具有精确的高度(行内覆盖样式):
div.vertical-line{
width: 1px; /* Line width */
background-color: black; /* Line color */
height: 100%; /* Override in-line if you want specific height. */
float: left; /* Causes the line to float to left of content.
You can instead use position:absolute or display:inline-block
if this fits better with your design */
}
<div class="vertical-line" style="height: 45px;"></div>
如果想要3D外观,请设置边框样式:
div.vertical-line{
width: 0px; /* Use only border style */
height: 100%;
float: left;
border: 1px inset; /* This is default border style for <hr> tag */
}
<div class="vertical-line" style="height: 45px;"></div>
您当然也可以尝试高级组合:
div.vertical-line{
width: 1px;
background-color: silver;
height: 100%;
float: left;
border: 2px ridge silver ;
border-radius: 2px;
}
<div class="vertical-line" style="height: 45px;"></div>
没有与该<hr>
元素垂直的等效项。但是,您可能要尝试的一种方法是在要分隔的内容的左侧或右侧使用简单的边框:
注册您的元素。
var vr = document.registerElement('v-r'); // vertical rule please, yes!
* -
在所有自定义元素中都是必填项。
v-r {
height: 100%;
width: 1px;
border-left: 1px solid gray;
/*display: inline-block;*/
/*margin: 0 auto;*/
}
*您可能需要摆弄一些东西,display:inline-block|inline
因为它inline
不会扩展到包含元素的高度。使用边距使线在容器内居中。
js: document.body.appendChild(new vr());
or
HTML: <v-r></v-r>
*很遗憾,您无法创建自定义自动关闭标签。
<h1>THIS<v-r></v-r>WORKS</h1>
例如:http://html5.qry.me/vertical-rule
只需将此CSS类应用于您指定的元素。
.vr {
height: 100%;
width: 1px;
border-left: 1px solid gray;
/*display: inline-block;*/
/*margin: 0 auto;*/
}
*请参阅上面的注释。
display
属性。将其设置为inline
或inline-block
。请参阅上面的注释和示例网址。
另一种选择是使用1像素的图像,并设置高度-此选项将使您可以将其浮动到需要的位置。
虽然不是最优雅的解决方案。
您可以通过在任何html元素中简单地使用height / width来绘制一条垂直线。
#verticle-line {
width: 1px;
min-height: 400px;
background: red;
}
<div id="verticle-line"></div>
您可以使用hr(水平线)标签,然后使用以下CSS将其旋转90度
hr {
transform:rotate(90deg);
-o-transform:rotate(90deg);
-moz-transform:rotate(90deg);
-webkit-transform:rotate(90deg);
}
要创建以div为中心的垂直线,我认为您可以使用此代码。我想,“容器”的宽度很可能是100%。
div.container {
width: 400px;
}
div.vertical-line {
border-left: 1px solid #808080;
height: 350px;
margin-left: auto;
margin-right: auto;
width: 1px;
}
<div class="container">
<div class="vertical-line"> </div>
</div>
如果您的目标是在容器中放置垂直线以分隔并排的子元素(列元素),则可以考虑如下设计容器的样式:
.container > *:not(:first-child) {
border-left: solid gray 2px;
}
这将从第二个子元素开始为所有子元素添加左边框。换句话说,您在相邻子级之间获得了垂直边界。
>
是一个子选择器。它匹配左侧指定元素的任何子元素。*
是通用选择器。它匹配任何类型的元素。:not(:first-child)
表示它不是其父母的第一个孩子。浏览器支持:> *:first-child和:not()
我认为这比简单的.child-except-first {border-left: ...}
规则要好,因为让竖线来自容器的规则而不是来自不同子元素的规则更有意义。
这是否比使用临时的垂直规则元素更好(通过设置水平规则等)取决于您的用例,但这至少是一种选择。
垂直于div的垂直线
<div style="width:50%">
<div style="border-right:1px solid;">
<ul>
<li>
Empty div didn't shows line
</li>
<li>
Vertical line length depends on the content in the div
</li>
<li>
Here I am using inline style. You can replace it by external style or internal style.
</li>
</ul>
</div>
</div>
离开div的垂直线
<div style="width:50%">
<div style="border-left:1px solid;">
<ul>
<li>
Empty div didn't shows line
</li>
<li>
Vertical line length depends on the content in the div
</li>
<li>
Here I am using inline style. You can replace it by external style or internal style.
</li>
</ul>
</div>
</div>
要添加垂直线,您需要设置hr的样式。
现在,当您制作一条垂直线时,它将显示在页面中间:
<hr style="width:0.5px;height:500px;"/>
现在将其放在您想要的位置,您可以使用以下代码:
<hr style="width:0.5px;height:500px;margin-left:-500px;margin-right:500px;"/>
这会将其定位在左侧,您可以将其反转以将其定位在右侧。
<hr>
水平线有一个标签。它可以与CSS一起使用来制作水平线:
.divider{
margin-left: 5px;
margin-right: 5px;
height: 100px;
width: 1px;
background-color: red;
}
<hr class="divider">
width属性确定线的粗细。height属性确定线的长度。background-color属性确定线条的颜色。
在要应用垂直行的上一个元素中,可以设置CSS ...
border-right-width: thin;
border-right-color: black;
border-right-style: solid;
<vr>