A voir également:
- Supprimer une border sur javasscript
- Comment supprimer une page sur word - Guide
- Supprimer compte instagram - Guide
- Comment supprimer une application préinstallée sur android - Guide
- Supprimer pub youtube - Accueil - Streaming
- Fichier impossible à supprimer - Guide
2 réponses
Salut,
pourquoi Javascript pour du css quand ce n'est pas nécessaire? A moins qu_'il s'agisse d'interactivité je vois pas l'intérêt à part compliquer la page et utiliser de la mémoire et du processeur (si peu) pour un truc pareil.
Comme ceci dans la page(ou en css externe ofc):
.div.cadre_border_bottom:last-child{
border-bottom-width:0; /* en enlevant -width cela devrait marcher, notation raccourcie */
/* ou les autres propriétés que vous voulez */
}
btw:
Je suis assez fainéant du js mais il me semble que vous mélangez l'écriture des pseudo classes CSS( avec le ":" ) avec la syntaxe objet (DOM) de javascript.
(vérifier ici: http://www.w3schools.com/jsref/prop_node_lastchild.asp)
Ainsi il vous faut écrire:
div.cadre_border_bottom.last-child
Je voit pas le HTML mais il faudrait que cadre_border_bottom soit un id et non une classe(à moins que vous appliquiez vos changements de style à plusieurs éléments :s ) ce qui nous aménerait à utiliser plutôt(ce qui est plus simple getElementById(); )
Mais je m'égare car div .cadre_border_bottom.last-child me parait pas correct, pour repérer votre div(s'il est bien unique dans ce cas oubliez js et faites seulement du CSS en mettant une id)
document.div .cadre_border_bottom.last-child
il me sembles. A vous de tester
/*Le css serait donc #div.cadre_border_bottom:last-child{
border-bottom:0;
/* ou les autres propriétés que vous voulez */
}*/
/!\ je vient de voir une grosse erreur:
Il y a un espace dans votre code (votre indentation c'est n'importe quoi, sur 3 lignes de codes vous êtes pas fichu de faire que ce soit présentable pour nous le montrer?) entre le div et . et comme au milieu vous insérez un mystérieux retour à la ligne celui ci ne se voit pas; forcément
div .cadre_border_bottom
ça ne pourra pas marcher(peut être ça l'erreur que vous avez rajouté en faisant n'importe quoi de votre indentation mais comme je n'ai ni l'envie ni la possibilité de tester je vais continuer mes recommandations parce là vous avez soit fait du n'importe quoi soit un travail de cocon et forcément sans précision avec un outil technique ça marchera jamais).
tandis que
div.cadre_border_bottom
c'est déjà mieux et
document.div.cadre_border_bottom c'est déjà plus propre, sympa et ça fonctionnes mieux.
Ensuite moi qui suis pas à l'aise avec js(pourtant j'ai utilisé AS2 pendant des années et il est sur les mêmes normes) je vais pas me compliquer la tâche avec fonctions maisons et des syntaxes tarabiscotées quand il en existe des faites pour cela et couramment utilisé:
Avec une id(sinon utilisez le tag name en rajoutant cet attribut et sa valeur):
function noborder(){
document.getElementByName("tartampion").lastchild.setAttribute("style", "border-bottom-width:0;");
//------ ou avec l'id document.getId("cadre_border_bottom") //
/*------ voire document.getElementsByTagName("DIV")[0].( la valeur du tableau indique le premier div de la page, à changer par la bonne position(voire à passer en paramètre de la fonction! *************************/
/************ VENTREBLEU CE QUE J'AIME LES COMMENTAIRES QUI SE VOIENT ET LES LIGNES D'ETOILES (ainsi que les jurons démodés depuis 200ans) *********************************************************************************************************************/
return true;// ça coute rien et ça peut rapporter, le mettre dans le test de l'opération au dessus encore mieux, on obtient true si la modification à été effectué et false si ça ne marche pas.
}
Euh bon je suppose que c'est un erreur de votre copier coller ça:
LE POINT VIRGULE QUI SE BALADE TOUT SEUL, l'ouverture de parenthèse devant la fonction qui sert à rien(on va la retrouver puisque vous la refermez à la fin mais étrange aussi.
$endScript = '<script>
;(function(){
Et votre function() qui n'a pas de nom(je pense pas ça marche, vous si?
Et donc pour refermer la parenthèse:
)();
hmm hmm si vous mettez un code ici il est destiné à être lu par les forumeurs. Soit vous comprenez rien du tout à javascript et l'avez bidouillé au pif et cassant tout forcément soit vous êtes sur une fonction au dessus et avez viré les catch phrase et le rapport d'erreur...mais avec 2 pieds gauche.
En tout cas pour venir demander un service la prochaine fois soignez un peu la présentation pour pas avoir une identation aussi foireuse(bon je suis pas très concentré et pas dormi depuis 26h mais j'ai pas vu directement les erreurs dont votre code est truffé, comme des amputations ou alors le chat est passé et à appuyé sur ; et les () supplémentaires car il connait bien(mieux que vous qui faites des fonctions sans les nommer) la syntaxe de javascript.
Bon pour le CSS je reste persuader que c'est ce qui faut faire en ajoutant éventuellement l'id(ou avec la pseudo-classe :lastchild), pour le javascript si quelqu'un qui l'utilise plus souvent que moi veut s'y pencher pour vérifier mes dires, sinon il n'y à qu'à tester.
Toutefois comme le but d'une fonction une fois crée est d'être appelé(ou pas) il vous faut l'appeler cette fonction :
$display = $out.$endScript;
Qui sembles indiquer que vous utilisez le pattern MVC(pour une sortie en console ça sonne pas terrible pour un affichage web) ce qui me convient de plus en plus que vous n'êtes pas l'instigateur du programme mais un simple plagieur pas doué(plagier un programme qui marche pour en faire un programme qu ne marche pas j'appelle pas ça une réussite)...
Ou alors je me trompe, mille excuses mais il va falloir que vous arrêtiez de vous cogner la tête ou arrêter de cogner ce pauvre programme qui en a perdu des plumes...
pourquoi Javascript pour du css quand ce n'est pas nécessaire? A moins qu_'il s'agisse d'interactivité je vois pas l'intérêt à part compliquer la page et utiliser de la mémoire et du processeur (si peu) pour un truc pareil.
Comme ceci dans la page(ou en css externe ofc):
.div.cadre_border_bottom:last-child{
border-bottom-width:0; /* en enlevant -width cela devrait marcher, notation raccourcie */
/* ou les autres propriétés que vous voulez */
}
btw:
Je suis assez fainéant du js mais il me semble que vous mélangez l'écriture des pseudo classes CSS( avec le ":" ) avec la syntaxe objet (DOM) de javascript.
(vérifier ici: http://www.w3schools.com/jsref/prop_node_lastchild.asp)
Ainsi il vous faut écrire:
div.cadre_border_bottom.last-child
Je voit pas le HTML mais il faudrait que cadre_border_bottom soit un id et non une classe(à moins que vous appliquiez vos changements de style à plusieurs éléments :s ) ce qui nous aménerait à utiliser plutôt(ce qui est plus simple getElementById(); )
Mais je m'égare car div .cadre_border_bottom.last-child me parait pas correct, pour repérer votre div(s'il est bien unique dans ce cas oubliez js et faites seulement du CSS en mettant une id)
document.div .cadre_border_bottom.last-child
il me sembles. A vous de tester
/*Le css serait donc #div.cadre_border_bottom:last-child{
border-bottom:0;
/* ou les autres propriétés que vous voulez */
}*/
/!\ je vient de voir une grosse erreur:
Il y a un espace dans votre code (votre indentation c'est n'importe quoi, sur 3 lignes de codes vous êtes pas fichu de faire que ce soit présentable pour nous le montrer?) entre le div et . et comme au milieu vous insérez un mystérieux retour à la ligne celui ci ne se voit pas; forcément
div .cadre_border_bottom
ça ne pourra pas marcher(peut être ça l'erreur que vous avez rajouté en faisant n'importe quoi de votre indentation mais comme je n'ai ni l'envie ni la possibilité de tester je vais continuer mes recommandations parce là vous avez soit fait du n'importe quoi soit un travail de cocon et forcément sans précision avec un outil technique ça marchera jamais).
tandis que
div.cadre_border_bottom
c'est déjà mieux et
document.div.cadre_border_bottom c'est déjà plus propre, sympa et ça fonctionnes mieux.
Ensuite moi qui suis pas à l'aise avec js(pourtant j'ai utilisé AS2 pendant des années et il est sur les mêmes normes) je vais pas me compliquer la tâche avec fonctions maisons et des syntaxes tarabiscotées quand il en existe des faites pour cela et couramment utilisé:
Avec une id(sinon utilisez le tag name en rajoutant cet attribut et sa valeur):
function noborder(){
document.getElementByName("tartampion").lastchild.setAttribute("style", "border-bottom-width:0;");
//------ ou avec l'id document.getId("cadre_border_bottom") //
/*------ voire document.getElementsByTagName("DIV")[0].( la valeur du tableau indique le premier div de la page, à changer par la bonne position(voire à passer en paramètre de la fonction! *************************/
/************ VENTREBLEU CE QUE J'AIME LES COMMENTAIRES QUI SE VOIENT ET LES LIGNES D'ETOILES (ainsi que les jurons démodés depuis 200ans) *********************************************************************************************************************/
return true;// ça coute rien et ça peut rapporter, le mettre dans le test de l'opération au dessus encore mieux, on obtient true si la modification à été effectué et false si ça ne marche pas.
}
Euh bon je suppose que c'est un erreur de votre copier coller ça:
LE POINT VIRGULE QUI SE BALADE TOUT SEUL, l'ouverture de parenthèse devant la fonction qui sert à rien(on va la retrouver puisque vous la refermez à la fin mais étrange aussi.
$endScript = '<script>
;(function(){
Et votre function() qui n'a pas de nom(je pense pas ça marche, vous si?
Et donc pour refermer la parenthèse:
)();
hmm hmm si vous mettez un code ici il est destiné à être lu par les forumeurs. Soit vous comprenez rien du tout à javascript et l'avez bidouillé au pif et cassant tout forcément soit vous êtes sur une fonction au dessus et avez viré les catch phrase et le rapport d'erreur...mais avec 2 pieds gauche.
En tout cas pour venir demander un service la prochaine fois soignez un peu la présentation pour pas avoir une identation aussi foireuse(bon je suis pas très concentré et pas dormi depuis 26h mais j'ai pas vu directement les erreurs dont votre code est truffé, comme des amputations ou alors le chat est passé et à appuyé sur ; et les () supplémentaires car il connait bien(mieux que vous qui faites des fonctions sans les nommer) la syntaxe de javascript.
Bon pour le CSS je reste persuader que c'est ce qui faut faire en ajoutant éventuellement l'id(ou avec la pseudo-classe :lastchild), pour le javascript si quelqu'un qui l'utilise plus souvent que moi veut s'y pencher pour vérifier mes dires, sinon il n'y à qu'à tester.
Toutefois comme le but d'une fonction une fois crée est d'être appelé(ou pas) il vous faut l'appeler cette fonction :
$display = $out.$endScript;
Qui sembles indiquer que vous utilisez le pattern MVC(pour une sortie en console ça sonne pas terrible pour un affichage web) ce qui me convient de plus en plus que vous n'êtes pas l'instigateur du programme mais un simple plagieur pas doué(plagier un programme qui marche pour en faire un programme qu ne marche pas j'appelle pas ça une réussite)...
Ou alors je me trompe, mille excuses mais il va falloir que vous arrêtiez de vous cogner la tête ou arrêter de cogner ce pauvre programme qui en a perdu des plumes...
je crois que tu est fatiguer mais merci pour le roman
car je sais qu'on peut une class sur css et html
je suis obliger de mettre en Javascript pour supprimer
car je sais qu'on peut une class sur css et html
je suis obliger de mettre en Javascript pour supprimer
Fatigué mais lucide et compétent.
J'ai mis les explications que vous n'avez sans doute pas compris, autant pour moi je pensait que vous vouliez la réponse à votre question je ne vous répondrais plus .
Ceci dit que vous vouliez du javascript ou suivez les recommandations d'une ID(et non en class, l'ID étant unique si vous la modifez vous ne changerez que la partie ciblée tandis qu'une classe risque de modifier non seulement ce que vous voulez modifier mais d'autres choses qui ne doivent pas l'être, CQFD?)
Pourquoi vous pouvez utiliser javascript pour écrire vos styles(dans ce cas je vous ai mis toutes les explications pour le faire aussi) et non CSS, ça reste un mystère pour moi, c'est pourtant aussi simple de rajouter un fichier de CSS au chargement de la page qu'un script js(et beaucoup plus facile à gérer), même si celui ci existe déjà et est fait avec le modèle MVC, donc l'affichage, la partie métier et le contrôleur(et donc pour changer l'affichage il faut intervenir sur la vue, soit le CSS qu'il soit ou non généré par javascript).
Et le javascript que vous mettez est incohérent, bourré de fautes.
C'est pour cela que j'ai pris le bon soin de réparer les erreurs(honnêtement ça ressemble plus à un torchon qu'à un programme) et de vous mettre (avec explication) comment vous devez faire pour avoir ce que vous voulez..
Bon après tout le code que je vous met vous convient pas, c'est pourtant le bon, alors je vais pas me répéter plus autant piss*r dans un violon débrouillez vous comme vous l'entendez.
ça good(avec les variantes:
function noborder(){
document.getElementByName("tartampion").lastchild.setAttribute("style", "border-bottom-width:0;");
return true;
}
Votre code un ramassis d'erreurs qui veulent rien dire à part que votre syntaxe ne s'appuie sur rien et qu'il faut être juste ou rien faire...
Rooh et je suit encore une fois trop sympa, si les solutions javascript que je vous ai fourni(voir les différentes façons de parcourir les noeuds des balises) vous conviennent pas(?pourquoi avec vous essayé?) utilisez le langage xpath qui est un langage fait pour parcourir les balises et les cibler précisément:
http://xml.developpez.com/cours/?page=tech
le setAttribute sur l'attribut style reste aussi la bonne façon de faire, les autres un peu farfelu.
Si un meilleur connaisseur que moi de js peut dire ce qu'il en pense, mais sans tester entre un code qui correspond à rien et qui a plus de fautes que de lignes de programme et celui que j'ai fait en m'appuyant sur les explications de la W3school.org(consortium du web) à vous de voir....si c'est une question de vanité ou si vous êtes capable d'apprendre les bonnes façons de faire.
J'ai mis les explications que vous n'avez sans doute pas compris, autant pour moi je pensait que vous vouliez la réponse à votre question je ne vous répondrais plus .
Ceci dit que vous vouliez du javascript ou suivez les recommandations d'une ID(et non en class, l'ID étant unique si vous la modifez vous ne changerez que la partie ciblée tandis qu'une classe risque de modifier non seulement ce que vous voulez modifier mais d'autres choses qui ne doivent pas l'être, CQFD?)
Pourquoi vous pouvez utiliser javascript pour écrire vos styles(dans ce cas je vous ai mis toutes les explications pour le faire aussi) et non CSS, ça reste un mystère pour moi, c'est pourtant aussi simple de rajouter un fichier de CSS au chargement de la page qu'un script js(et beaucoup plus facile à gérer), même si celui ci existe déjà et est fait avec le modèle MVC, donc l'affichage, la partie métier et le contrôleur(et donc pour changer l'affichage il faut intervenir sur la vue, soit le CSS qu'il soit ou non généré par javascript).
Et le javascript que vous mettez est incohérent, bourré de fautes.
C'est pour cela que j'ai pris le bon soin de réparer les erreurs(honnêtement ça ressemble plus à un torchon qu'à un programme) et de vous mettre (avec explication) comment vous devez faire pour avoir ce que vous voulez..
Bon après tout le code que je vous met vous convient pas, c'est pourtant le bon, alors je vais pas me répéter plus autant piss*r dans un violon débrouillez vous comme vous l'entendez.
ça good(avec les variantes:
function noborder(){
document.getElementByName("tartampion").lastchild.setAttribute("style", "border-bottom-width:0;");
return true;
}
Votre code un ramassis d'erreurs qui veulent rien dire à part que votre syntaxe ne s'appuie sur rien et qu'il faut être juste ou rien faire...
Rooh et je suit encore une fois trop sympa, si les solutions javascript que je vous ai fourni(voir les différentes façons de parcourir les noeuds des balises) vous conviennent pas(?pourquoi avec vous essayé?) utilisez le langage xpath qui est un langage fait pour parcourir les balises et les cibler précisément:
http://xml.developpez.com/cours/?page=tech
le setAttribute sur l'attribut style reste aussi la bonne façon de faire, les autres un peu farfelu.
Si un meilleur connaisseur que moi de js peut dire ce qu'il en pense, mais sans tester entre un code qui correspond à rien et qui a plus de fautes que de lignes de programme et celui que j'ai fait en m'appuyant sur les explications de la W3school.org(consortium du web) à vous de voir....si c'est une question de vanité ou si vous êtes capable d'apprendre les bonnes façons de faire.
20 janv. 2014 à 01:27
div .cadre_border_bottom pointiller1 etc......:
même erreur de syntaxe grossières: un espace blanc entre le div et le point, un espace blanc entre la classe et "pointiller1" c'est nouveau ça.
Il me sembles qu'il y a une syntaxe qui permets d'écrire le css à partir d'éléments javacript et que l'écriture est un chouïa différente du CSS.
Si vous parlez de la propriété border-style CSS le changer ne supprimeras pas la bordure(puisque si vous avez un style de bordure vous avez une bordure) il vaut mieux le mettre à border-bottom-width:0; comme je l'ai écrit plus haut.
border-bottom-width:o; indiques que l'épaisseur de votre bordure du côté du bas est de 0.
pointiller1 vraiment?
Je connaisait dotted(pointillé en anglais) et dashed (dash = tiret), voire inset ridge outset et solid comme style de bord du cadre mais vous venez d'en inventer une, ou plutôt un barbarisme... en langage de programmation c'est fort mais ça ne marchera pas.
L'imprécision ça s'appelle "ça ne marchera jamais votre programme" et il y en a beaucoup.
Revoyez vos classiques(initiation, cours et méthodes de débutant) parce si votre programme est aussi truffé de fautes et d'incohérences, d'invention pittoresques que les quelques lignes que vous avez montré ici je pari mon dentier que le commanditaire n'est pas prêt d'avoir un programme qui marche...
20 janv. 2014 à 01:29