Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/91.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HTML和PHP如何确保<;p>;内容没有包装到第三行?_Php_Html - Fatal编程技术网

HTML和PHP如何确保<;p>;内容没有包装到第三行?

HTML和PHP如何确保<;p>;内容没有包装到第三行?,php,html,Php,Html,考虑以下代码: <?php $fetchlast = mysql_query("SELECT * FROM posts WHERE id=(SELECT MAX(id) FROM posts)"); $lastrow = mysql_fetch_row($fetchlast); $lastid = $lastrow[6]; for ($i=1; $i &l

考虑以下代码:

<?php 


                $fetchlast = mysql_query("SELECT * FROM posts WHERE id=(SELECT MAX(id) FROM posts)");
                $lastrow = mysql_fetch_row($fetchlast);
                $lastid = $lastrow[6];

                for ($i=1; $i <= $lastid; $i++) { 

                    $currentname = mysql_query("SELECT * FROM posts WHERE id=$i");

                    while ($row = mysql_fetch_array($currentname)) {
                        $title = $row[0];
                        $desc = $row[13];
                        $ID = $row[6];
                        $views = $row[3];

                        $title2 = rtrim($title);
                        $donetitle = str_replace(" ", "-", $title2);
                        $url = "articles/".$ID."/".$donetitle."";

                        $donetitle = strlen($title) > 40 ? substr($title,0,60)."..." : $title;
                        $donedesc = '';

                        if(strlen($desc) > 150) {
                            $donedesc = explode( "\n", wordwrap( $desc, 150));
                            $donedesc1 = $donedesc[0] . '...';

                        }else{
                            $donedesc1 = $desc;

                        }

                        $finviews = number_format($views, 0, '.', ',');

                        echo "<div id = \"feature\">
                               <img src=\"img/tempsmall.jpg\" alt = \"article thumbnail\" />
                              </div>
                                <div id = \"feature2\">
                                    <a href= \"$url\" id = \"titletext\" alt = \"8 bit computer input system \">$donetitle</a>
                                     <p id=\"resultp\">$donedesc1</p>
                                     <b id=\"resultview\">$finviews views</b> 
                                </div>
                              <div id = \"border\"></div>";

                    }

                }
?>


上面的代码输出一系列搜索结果。每个结果都有一个描述。我只想让描述占两行,我不想把它放在第三行。因此,我认为将字符数量限制在150个是可行的,但不完全可行。问题如下:如果你有一个由150'f'组成的描述,它会比由150'D'组成的描述短很多,因为'f'更薄。在不切换到其他字体的情况下,如何删除字符串的一部分以使描述适合两行而不进入第三行?谢谢。

您可以通过
CSS
来实现这一点,方法是设置
行高
,然后将
最大高度
设置为
行高
的2倍,即2行

.truncate {
  line-height: 25px;
  max-height: 50px;
  overflow: hidden;
  text-overflow: ellipsis;
}

您可以通过
CSS
来实现这一点,方法是设置
行高
,然后将
最大高度
设置为2倍
行高

.truncate {
  line-height: 25px;
  max-height: 50px;
  overflow: hidden;
  text-overflow: ellipsis;
}

定义“线”。当用户缩小浏览器时会发生什么?这看起来像是针对客户端功能而不是服务器端的作业。那么用户必须滚动,所以这是针对绝对固定宽度的作业?宽度是多少?在哪里/如何定义?如果用户更改浏览器上的缩放级别,该怎么办?或者具有与预期不同的本地字体设置?不管你怎么看,这都是由客户端代码决定的。即便如此,投资回报似乎也很小。定义“线”。当用户缩小浏览器时会发生什么?这看起来像是针对客户端功能而不是服务器端的作业。那么用户必须滚动,所以这是针对绝对固定宽度的作业?宽度是多少?在哪里/如何定义?如果用户更改浏览器上的缩放级别,该怎么办?或者具有与预期不同的本地字体设置?不管你怎么看,这都是由客户端代码决定的。即便如此,投资回报也似乎很小。