0

我有一个<td>设置为 display的表div#time2,其中填充了来自数据库 [LastBuild] 的时间。下面是一个包含 的段落div#time,其中填充了当前时间。我的问题是#time2和 [LastBuild] 不在同一条线上;[LastBuild] 如下图所示#time2。我需要这两个在同一行(段落之后的第二部分已经做了我想要的)。

<table style="border-style:none; width:850px; border-spacing:0; border-collapse:collapse;">
    <tr>
        <td style="float:left; background-color:#000000;color:#FFFF00; width:335px; text-align:left; font-size:10;">By TrueLogic Company
            <p>Edited By International Electronic Components</p>
        </td>
        <td width="200"></td>
        <td style="float:right;background-color:#000000;color:#FFFF00; width:235px; text-align:right; font-size:10;">
            <div id="time2"></div>
            [LastBuild]
            <p>
                <div id="time" align="right" style="background-color:#000000;color:#FFFF00;"></div>
            </p>
        </td>
    </tr>
</table>

这是馈送divs 的 JavaScript:

var mydate=new Date();
var year=mydate.getYear();
if (year < 1000) year+=1900;
var day=mydate.getDay();
var month=mydate.getMonth();
var daym=mydate.getDate();
if (daym<10) daym="0"+daym;
var dayarray=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
var montharray=new Array("1","2","3","4","5","6","7","8","9","10","11","12");
var date=new Date();
var hours=date.getHours();
var minutes=date.getMinutes();
var ampm = hours >= 12 ? 'PM' : 'AM';
hours = hours % 12;
hours = hours ? hours : 12;
minutes = minutes < 10 ? '0'+minutes : minutes;
var s=date.getSeconds();
s = s < 10 ? '0'+s : s;
var Time = "Current Time:  ";
var Text = "Last Update:  ";

document.getElementById('time').innerHTML =Time+" "+dayarray[day]+" "+montharray[month]+"/"+daym+"/"+year+" "+hours+":"+minutes+":"+s+" "+ampm; 
document.getElementById('time2').innerHTML =Text+" "+dayarray[day];
4

2 回答 2

1

#time2, a div, 默认为display:block,这会导致它后面的任何内容都显示在换行符之后。为了解决这个问题,使用这个 CSS(除了你已经拥有的这个元素):

#time2 {
    display:inline-block;
    *display:inline;
    zoom:1;
}

我忘记了旧版本的 IE。最后两行应该处理它;请参阅此答案以获取解释。

在跟进我对您的问题留下的评论时,我创建了一个示例来说明您的意图。我更改了一些标签。表格实际上是用于表格数据的,因此在这种情况下,div 似乎更合适。我解释了我在评论中所做的所有 CSS 更改。如果您愿意,请随意使用它!如果合适,它会干净得多。

更新: 微软声称inline-blockIE 5.5+ 中受支持(我相信它被称为 IE 6)。

于 2013-07-27T07:54:23.060 回答
0

删除<p>标签 b/w 两个 div 因为 p 是换行符的原因

<Td style="float:right;background-color:#000000;color:FFFF00; width:235px; text-align:right; font-size:10;"><div id="time2"></div> [LastBuild] **<p>** <div id="time" align="right" style="background-color:#000000;color:FFFF00;"></div></td>
于 2013-07-27T07:48:00.443 回答