2

这对我来说似乎很简单,但是经过几天的尝试(我的经验非常有限)和寻找解决方案后,我还是一片空白。我正在使用嵌入式 css 样式在单个 html 页面上创建一个链接页面,以便在浏览器窗口中使用。

我希望简单地将我的链接对齐到我的 div 的左侧,并附上与 div 右侧对齐的链接的文本说明。有一个包装 div,其中包含两个其他 div(右和左),其中包含链接框(类别)。第一个示例仅使用句点来创建所需的空间。

到目前为止,我已经尝试了以下 HTML:

<html>
<body>
    <div class="wrapper">
        <div class="div_body_side1">
            <div id="div_category01">
                <p>
                    <A HREF="http://www.webaddress" > Short Description
                    </A>.................... Longer description of where this link will take you
            </p>
            </div>    
        </div>
    </div>
</body>
</html>

我还想我可以尝试这种方法(如下),但我不知道如何为长描述中的文本着色并将其与类别 div 的最右侧对齐。

 <tr>
 <td>
 <A HREF="http://www.webaddress" > Short Description</A>
 </td>
 <td>
  Longer description of where this link will take you
 </td>
 </tr>

我是否必须在每个类别中再创建两个并排的 div 才能实现我想要的效果?我还需要 div 和文本水平“缩小”(缩放)以供小型笔记本电脑使用,而且我知道很多 div(浮动)以某种方式阻止了适当的缩放。

对于我缺乏专业知识,我深表歉意,但我真的几天来一直在寻找解决方案。提前感谢您的任何帮助。..................................................... ......

再一次问好。不幸的是,Billy Chan 的回答不起作用(但感谢您提醒我使用“title”属性)。我已经用三个链接的列表进行了尝试,结果如下所示:

链接1链接2链接3说明1说明2说明3

这是我使用的:

<div>
    <span class="link">
    <a href="#whatever">Whatever</a></span>
    <span class="explanation">Whatever explain</span>

    <span class="link">
    <a href="https://www.google.com.au"title="Google">Google search</a>
    </span>
    <span class="explanation">Secure Google search page
    </span>

    <span class="link">
    <a href="http://www.google.com/ncr" >Google search</A>
    </span>
    <span class="explanation">US Google search page
    </span>

</div>

...使用以下 CSS:

<style>
    .link, .explanation {display:inline}
    .link {float: left}
    .explanation {float: right}
</style>

我现在将尝试提供的其他解决方案。非常感谢大家。

……………………………………………………………………………………………………………………………………

谢谢 dbaseman,但您的解决方案需要在我的类别 div 中再添加两个 div,不是吗?我不能将您的 "div class="right"" 应用于我的类别 div(这是一个 ID),可以吗?

现在将尝试 Urg mu 的解决方案。干杯。

哦.. Urg mu - 似乎您提供了一种仅对文本着色的解决方案。您的解决方案不会使我的“长解释”正确吗?

前往纳文夏尔马。很抱歉,您能否解释一下您的解决方案实际上应该做什么?

再次感谢大家。我学到了很多东西。
干杯。

请查看我想要实现的这个可怕的 jsFiddle 版本。是的,它包括许多测试内容以及此处提供的“解决方案”..,您必须将浏览器窗口拖到最右边,将“结果”窗口拖到最左边才能看到我的两个 div -边:

http://jsfiddle.net/wreckanoid/CdN2z/

4

5 回答 5

2

直接回答:

使用两个跨度来包装链接和解释。例子

<div id="catgory01">
  <span class="link"><a href="#whatever">Whatever</a></span>
  <span class="explanation">Whatever explain</span>
</div>

然后定义两个跨度的样式

<style>
  .link, .explanation {display:inline}
  .link {float: left}
  .explanation {float: right}
</style>

包装链接的原因是您可能不希望所有链接都像这样。

这个答案应该有效,但您可能会发现问题是您的链接锚或解释太长,它们可能重叠。请注意这一点。

进一步的答案:解释链接的正确方法是使用标题属性

<a href="#whatever" title="Explanation">Whatever</a>

这样,当您悬停链接时,您会得到提示。

于 2012-11-16T05:52:55.770 回答
0

这是我已经解决的问题。我可能会在链接和解释之间添加一些下划线,但我认为我现在有了一个用于浏览器使用的出色的嵌入式 CSS 链接菜单页面的基础。结果如下:

http://jsfiddle.net/wreckanoid/zV9Sd/embedded/result/

这是代码:

http://jsfiddle.net/wreckanoid/zV9Sd/

.wrapper
{
position:relative;
background-color: #e7ecfa;
width: 90%; 
margin-left:15%;
margin-right:15%;
height:auto;
display: block; 
overflow:auto; 
border:inset .5em #ccffff;
margin: 1em auto;
box-shadow: 0 0.3em 1em #000000;    
}

.div_body_side1
{
float: LEFT;
position:relative;
text-align: left;
/*  border: solid 1px #d1d7e5; */ 
width: 45%;
display: block; 
margin-left: 2.5em;
margin-right: 1em;
margin-top: 2em;
margin-bottom: 2em;
padding: .5em;
white-space:normal;
clear:none;
}


.div_body_side2
{   
clear:none;
float:left;
position:reative;
text-align: left;
/*  border: solid 1px #d1d7e5;  */ 
width: 45%;
display:inline;
margin-right: 1em;
margin-top: 2em;
margin-bottom: 2em;
padding: .5em;
}   

#div_category01, #div_category02, #div_category03, #div_category04,     #div_category05, #div_category06, #div_category07, #div_category08, #div_category09
{
background-color: #eff5fb;
margin: 1em 1em;
width: auto;
display: block;
border:ridge 6px #ff3333;
box-shadow: 0 0.3em 1em #000000;
position:relative;
clear:both;
}


.center
{
text-align: center;
}

.right 
{
float: right;
padding-right: 20px;
color: #cc6600;
}

body 
{ 
margin:0;
padding:0;
}

h1
{
text-align: center;
}

h2 
{
text-align: center;
}

img.center
{   
display: block;   
margin: 0 auto;
}

a 
{ 
color: blue;
padding-left: 20px;
}

这是HTML:

</head>

<body>

<div class="wrapper">

<H1> Test Bookmarks Menu</H1>

<a href="http://www.qut.edu.au" >
<IMG SRC="http://www.tils.qut.edu.au/graphics/logo.gif"
BORDER="4" title="QUT logo" alt="QUT logo" class="center" /></a>



    <div class="div_body_side1">

        <div id="div_category01">

    <H2>CATEGORY 1 HEADER</H2>
    <br>

    <a href="https://www.google.com.au/" > Google Australia
    </a>

    <span class="right">
        Google Secure, Australia
    </span><br><br>

    <a href="https://www.google.com/ncr" > Google USA
    </a>

    <span class="right">    
        Google Secure, USA
    </span><br><br>

    <a href="https://encrypted.google.com/" > Google Encrypted
    </a>

    <span class="right">    
        Google Secure, Encrypted
    </span><br><br>

    <a href="https://www.google.com.au/" > Google Australia
    </a>

    <span class="right">
        Google Secure, Australia
    </span><br><br>     


    </div><!-- close category01 -->



</div><!-- close div_body_side1 -->



<div class="div_body_side2">

    <div id="div_category05">

    <H2>Category 5 Header </H2>

        <a href="https://www.google.com.au/" > Google Australia
        </a>

    <span class="right">            
        Google Secure, Australia
    </span><br><br>

        <a href="https://www.google.com/ncr" > Google USA
        </a>

    <span class="right">            
        Google Secure, USA
    </span><br><br>     

        <a href="https://encrypted.google.com/" > Google Encrypted
        </a>

    <span class="right">            
        Google Secure, Encrypted
    </span><br><br>

        <a href="https://www.google.com.au/" > Google Australia 
        </a>

    <span class="right">            
        Google Secure, Australia
    </span><br><br>


    </div><!-- close category05 -->



</div><!-- close div_body_side2 -->

感谢你们所有人,我觉得我现在掌握了这些 CSS 东西..!:-)

我也会在所有链接中添加“标题”标签。干杯。

于 2012-11-22T07:52:44.283 回答
0

CSS

div {  width:400px; border:red 1px solid; padding:10px 0px; }
p {  overflow:auto; margin:0px;
    background:url('http://reference.wolfram.com/legacy/MathematicaCharacters/Ellipsis.gif') 100% repeat-x ;
}
a {
    float:left; padding:0px 5px 0px 10px;
    background-color:#fff;
}
.desc {
    float:right; padding:0px 10px 0px 5px;
    background-color:#fff;
    color:#333;
}

HTML

<div>
  <p>
    <a href="#link" >IAClient</A>
    <span class="desc">QUT Internet Access Client</span>
  </p>
  <p>
    <a href="#link" >AARNet</A>
    <span class="desc">AARNet's FTP & HTTP Mirror</span>
  </p>
</div>

http://jsfiddle.net/CZt8R/

于 2012-11-16T05:47:13.010 回答
0

一种简单的方法是分别在链接和描述上使用float: left和。float: right

HTML

<a href="http://www.webaddress" > Short Description </a>
<div class="right">.................... Longer description of where this link will take you</div>

CSS

a { float: left; }
.right { float: right; }​

这是一个演示。


编辑帖子更新

获得这种布局的两个关键:

  • 对链接和描述使用固定(基于百分比)的左边距
  • 显示一长串省略号“......”并overflow-x: hidden用来隐藏多余的

另一个演示。

于 2012-11-16T05:48:05.930 回答
0

在您提供的 HTML 中添加以下代码行

<style>
.div_body_side1 p a{width:200px;float:left}
</style>

现场演示

于 2012-11-16T05:48:32.353 回答