这可能与HTML有关吗?

时间:2013-04-11 22:49:49

标签: html css

我需要在网站上实现一个菜单卡。我的客户想要的是,它看起来与餐厅的卡片完全一样。

是否可以使用HTML将边框线直接放在文本下面,如下图所示(“Hauptgerichte”)?如果是的话,我怎么能意识到这一点?

enter image description here

谢谢!

7 个答案:

答案 0 :(得分:2)

如果您希望边框触及文字,可以将line-height调整为小尺寸:

p
{
    border-bottom: 1px solid black;
    line-height: 10px;
}

http://jsfiddle.net/kz43g/

答案 1 :(得分:1)

这是一个变体 - 这是一个fiddle HTML:

 <div>
        <p> some text </p>
    </div>

的CSS:

*{
padding:0;
    margin:0;
}
div{
    border-bottom:1px solid #000;
}
p{
    margin-bottom:-5px;
}

我只是将负底边距放到文本容器中(在这种情况下是p标记)

答案 2 :(得分:1)

使用伪元素after可以实现纯CSS解决方案,请参阅fiddle。与文本的距离由bottom:3px

完成
.underline {
    position:relative;
}
.underline::after {
    content: '';
    width: 100%;
    position:absolute;
    bottom: 3px;
    left:0;
    border-bottom: 1px solid black;    
}

编辑:行高解决方案看起来更好:)

答案 3 :(得分:1)

这可以在HTML / CSS中使用:Example

HTML:

<h3 class="yourClass">Text place</h3>

CSS:

.yourClass{
   width:300px;
   border-bottom: 1px solid #000;
   text-indent:50px;
   line-height:80%;
}

在这个例子中,我正在改变行高以移动行下的文本,然后使用text-indent将其移动到正确的位置。它应该给你想要的结果。有几种方法可以做到这一点,但这需要更少的HTML。

答案 4 :(得分:1)

这是JS Bin,显示了如何做到这一点。我在段落的底部添加了一个边框,在左边添加了一个小填充。然后我改变了段落的行高,使它恰好位于边界上。

您可以尝试使用:

text-decoration: underline;

我选择使用border属性进行轻松自定义。

来自JS Bin的

CSS:

p {
  border-bottom:1px solid #333;
  line-height: 50%;
  padding: 0 0 0 40px;
}

答案 5 :(得分:0)

将标题放在H标记中,然后使用CSS定位H标记并应用边框底部。

HTML

<div id="content">
<h1>title</h1>
</div>

CSS

#content h1{
Border-bottom:1px solid #999;
Width: 150px;
}

答案 6 :(得分:0)

将文本放在div中。然后,使div成为设定宽度。然后,为div添加边框。

<div id="title">
 <h2> Hauptgerichte </h2>
</div>

/*CSS*/
#title{
  width: 50px;
  border-bottom: 2px solid #000000;
}