2009-06-05 3 views

Répondre

4

Je ne pense pas que ce soit possible.

Vous pouvez superposer du texte, mais vous entrez dans le territoire de ce site.

5

Vous ne pouvez pas modifier les couleurs de texte dans un champ <input>. Vous pouvez toutefois créer un DIV en dessous ou le superposer comme suggéré dans une réponse précédente.

Voici un exemple qui fait cela en utilisant Plain Old Javascript.

<html> 
<head> 
<title>Random Colors</title> 
<script> 
window.onload = function(){ 
    var mytextbox = document.getElementById("mytext"); 
    mytextbox.onblur = function(){ 
    var words = mytextbox.value.split(' '); 
    var myDiv = document.getElementById("divText"); 
    myDiv.innerHTML = ''; 
    for(i = 0, len = words.length; i<len;i++){ 
     myDiv.innerHTML += '<span>' + words[i] + '</span>&nbsp;'; 
    } 
    var spans = myDiv.getElementsByTagName('span'); 
    for(i = 0, len = spans.length; i<len; i++){ 
     spans[i].style.color = random_color(); 
    } 
    } 
} 
function random_color() 
{ 
    var rint = Math.round(0xffffff * Math.random()); 
    return ('#0' + rint.toString(16)).replace(/^#0([0-9a-f]{6})$/i, '#$1'); 
} 
</script> 
</head> 
<body> 
<input type="text" id="mytext" /> 
<div id="divText"></div> 
</body> 
</html> 

couleur aléatoire Fonction Source

0

Vous pouvez utiliser un div au lieu d'une entrée.

Ensuite, donnez-lui des propriétés CSS lui donnant l'apparence d'une entrée.

Et utilisez la propriété contentEditable pour l'éditer (un élément HTML5 pris en charge par les navigateurs modernes et IE) si l'audience de votre navigateur le permet.

Mais je suppose que vous devrez construire quelque chose comme un éditeur de texte enrichi « a la » google docs pour permettre à vos utilisateurs de changer les couleurs, qui vous garantira des heures de travail drôles;)

Questions connexes