Diminuire automaticamente la grandezza del font se i caratteri superano un certo numero

bluekid

Nuovo Utente
28 Giu 2013
13
0
1
Ciao Ragazzi
avrei bisogno di un vostro aiuto per risolvere un problemino che ho,
nello specifico avrei bisogno di uno script in php che mi riduca il font-size se la lunghezza dei caratteri è superiore a 30.

Ho utilizzato fin'ora questo in jquery che è perfetto:
Codice:
	    $(function() {
	        var len_fit = 40; // According to your question, 10 letters cat fit in.
	        var un = $('.nometit');
	
	        // Get the lenght of user name.
	        var len_nometit = un.html().length;
	        if(len_fit < len_nometit ){
	
	            // Calculate the new font size.
	            var size_now = parseInt(un.css("font-size"));
	            var size_new = size_now * len_fit/len_nometit;
	
	            // Set the new font size to the user name.
	            un.css("font-size",size_new); 
	        }
	    });
il problema è che mi va in conflitto con altri script in jquery e non funziona più.
E' possibile in qualche maniera convertire questo script in php?
Grazie mille:cool:
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
146
63
PR
www.borgo-italia.it
ciao
se non ho capito male potresti fare così usando i css
PHP:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
.grande{font-size:36px;}
.piccolo{font-size: 10px;}
-->
</style></head>
<body>
<?php
$c="grande";
$testo="aaaa aaaa aaaa";
if(strlen($testo) > 40)){$c="piccolo";}
echo "<span class=\"$c\">$testo</span>";
?>
</body>
</html>
 

bluekid

Nuovo Utente
28 Giu 2013
13
0
1
Ciao Borgo Italia,
grazie innanzitutto per la risposta, sto provando il tuo script,
la riga in questione è questa:

Codice:
echo "<div id='formupsx'>Benvenuto<br /><img src='img/usr.png' title='' alt='' /><span class='nometit'>".$_SESSION['nomeutente']."</span></div>";
come puoi notare il testo su cui vorrei cambiare la grandezza è dinamico .$_SESSION['nomeutente'].
in questo caso (scusami sono un neofita di php) come devo trasformare la stringa inserendo la variabile $c da te suggerita?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
146
63
PR
www.borgo-italia.it
ciao
vedo che la sessione la metti tra i tag span con class=nometit
non so cosa hai in nometit, ma potresti fare due isrtuzioni css chiamate es.
nometit_g e nometit_p
uguali salvo la grandezza da attribuire a font-size
PHP:
<?php
$c="nometit_g";
if(strlen($_SESSION['nomeutente']) > 40)){$c="nometit_p";} 
echo "<div id='formupsx'>Benvenuto<br /><img src='img/usr.png' title='' alt='' /><span class=\"$c\">".$_SESSION['nomeutente']."</span></div>";
?>
oppure
lasciando solo nometit aggiungere style allo span
PHP:
<?php
$c="style=\"font-size:36px;\"";
if(strlen($_SESSION['nomeutente']) > 40)){$c="style=\"font-size:10px;\"";}
echo "<div id='formupsx'>Benvenuto<br /><img src='img/usr.png' title='' alt='' /><span class='nometit' $c>".$_SESSION['nomeutente']."</span></div>";
?>
io preferirei la prima