Estoy metido en algún desarrollo de aplicaciones web para iPhone (Safari/WebKit) en este momento y quiero tener elementos de una altura establecida con el texto del título y el texto del cuerpo de modo que siempre se muestren 3 líneas. Si el texto del título es corto, se deben mostrar 2 líneas de texto del cuerpo. Si el texto del título es muy largo, debe tomar un máximo de 2 líneas y dejar 1 línea para el texto del cuerpo. Siempre que el texto se trunca, debe mostrar una elipsis como el último carácter.Usar el desbordamiento de texto CSS para variar el número de líneas de texto dentro de un elemento de una altura de conjunto
He encontrado lo siguiente que hace todo lo que necesito, excepto que no muestra las elipsis. ¿Hay alguna manera de obtener esta solución para satisfacer ese último requisito?
Code below, as rendered by Safari http://segdeha.com/assets/imgs/stack-ellipsis.png
<!DOCTYPE HTML>
<html>
<head>
<style type="text/css">
#container {
width: 100px;
}
p {
/* white-space: nowrap; */
font-family: Helvetica;
font-size: 12px;
line-height: 16px;
text-overflow: ellipsis;
max-height: 48px;
overflow: hidden;
border: solid 1px red;
}
strong {
/* white-space: nowrap; */
font-size: 16px;
display: block;
text-overflow: ellipsis;
max-height: 32px;
overflow: hidden;
}
</style>
</head>
<body>
<div id="container">
<p>
<strong>Short title</strong>
This is the text description of the item.
It can flow onto more than 2 lines, too,
if there is room for it, but otherwise
should only show 1 line.
</p>
<p>
<strong>Long title that will span more
than 2 lines when we're done.</strong>
This is the text description of the item.
It can flow onto more than 2 lines, too,
if there is room for it, but otherwise
should only show 1 line.
</p>
</div>
</body>
</html>
Miré http://iphone.facebook.com en Safari (falsificando el agente de usuario de iPhone) y parece que lo hacen en el lado del servidor. Sospecho que estoy condenado al mismo destino. –
He querido hacer algo similar en el pasado. Terminé tratando de dividir las líneas y agregar el lado del servidor de puntos suspensivos. Eso terminó requiriéndome saber cuán ancho y alto sería el texto (en píxeles). Finalmente me rendí frustrado. –
¿JavaScript no está disponible? – peteorpeter