我是想实现一个类似报纸的效果~~比如:
比如左上的文章块,可不可以用css直接给出要分几栏,然后控制能显示几行,和其字距,行距??? 我想在我的php里动态的实现对这三个参数的的控制。就是说在这一堆文字上 定义三个css参数, 3栏,字距0.25,行距0.38,只显示到50行,后面挂一个“点此看更多”小弟css太弱了~~ 呵呵,好不意思。各位多帮忙~~ 多谢多谢~~
比如左上的文章块,可不可以用css直接给出要分几栏,然后控制能显示几行,和其字距,行距??? 我想在我的php里动态的实现对这三个参数的的控制。就是说在这一堆文字上 定义三个css参数, 3栏,字距0.25,行距0.38,只显示到50行,后面挂一个“点此看更多”小弟css太弱了~~ 呵呵,好不意思。各位多帮忙~~ 多谢多谢~~
解决方案 »
- 各位求救,限制 ul li中的文字字数,鼠标划过文字显示所有字数和显示的图片和一些描述言文字,
- 新手求教函数调用问题
- 我这样ajax 为什么返回的是undefined????????
- 如何将一个 input 的 value 清空。
- 请问一下这个网站的F1,F2弹的那个是怎么做的
- 是否可以用embed控制播放mms流文件
- 在生成动态表时的问题。
- 如何得到iframe裡另外一個頁面上的checkbox的值﹖
- iframe的onkeypress事件?
- 那判断窗口关闭除了onunload事件以外还有其它事件吗?
- 怎么让一个文本框在页面加载的时候就获得焦点
- Ext 将grid中的数据导出到Excel和打印出来
xxxxx xxxxx xxxxx
xxxxx xxxxx xx
第一列完成以后会自动到第二列??怎么实现?
笨的方法就是table
还有,可以用div
你每一块1000字,那么可以分段来实现了假如总文字用变量str="这里有10000个文字",存储起来然后这样
<div>
<ul>
<%for i=1 to 10000/1000%>
<li><%=mid(str,(i-1)*1000+1,i*1000)%></li>
<%next%>
</ul>
</div>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style>
div{
width:1000px;
height:auto
}
ul{
width:1000px;
height:auto
}
li{
float:left;
width:100px;
height:auto;
background:#CCCCCC;
padding:3px;
word-break:break-all;
}
</style>
</head><body>
<%for i=1 to 1000%>
<%str=str&"牛年"%>
<%next%>
<div>
<ul>
<%x=len(str)
for i=1 to x/1000
j=i-1%>
<li><%=mid(str,j*1000+1,i*1000)%></li>
<%next%>
</ul>
</div>
</body>
</html>呵呵,里面具体的字数,和行数,根据你的程序实际情况改写
呵呵~~ 楼上的老大,多谢。 这种文章分栏的排版,每列的字数是不同的,因为每个自然段最后结束的时候都不是完整的充满列。还有,有时有数字,小标题什么的情况。所以我曾设想,把每列最后一段,有css方式,把没排完的部分充满列。如果控制在此段多几个字和少几个字的情况下,应该行的通。但是如果多字和少字多的情况,又不行。…………所以如果有css或javascript的方法直接做接排两个文字块的处理就好了~~多谢楼上各位~~
不把字摆出来,很难知道到哪换行换栏
可以算,思路大概这样:(最好在服务器端处理)
(要等宽字体)逐个字符分析,2个半角字符算一个汉字。假如一行20个汉字,一栏20行。
那么:(用vbs吧)
Dim s, c, i, r, l
s = ""
r = 0
l = 0
For i = 1 To Len(Text)
c = Mid(Text, i, 1)
If AscW(c) < 256 Then
l = l + 1
Else
l = l + 2
End If
s = s & c
If l = 40 Then '与20*2比较
l = 0
r = r + 1
ElseIf l > 40 Then
l = 1
r = r + 1
End If
If r Mod 20 = 0 Then
s = s & Chr(0)
End If
Next
Response.Write "<div>" & Replace(s, Chr(0), "</div><div>") & "</div>"
c是每次循环要分析的字符,ascw值小于256,就算1个,否则算2个。
l是当前行数过的字符数,当达到40时,清0,并且r++。注意:当=40时,说明整行;当>40时,要跑到下面一个字符(不大对,如果当前c的ascw值>255,那一个汉字跑到下一行了。自己改下);
r保存行数,当是20的倍数时,s加上Chr(0),为了后面处理。
循环结束,得到s,这是输出要用到的。
仔细考虑下,清除了就明白了。只要头脑清醒,没有解决不了的问题
CSS 3 规范在 Firefox 有兼容性属性:-moz-column-count,可以
去看看(https://developer.mozilla.org/en/CSS3_Columns),在 IE 下好像还没有。
http://www.notsee.info/tech/js/js-detail-425.xml