[RUBY] Comment décorer CSS sur les boutons radio de rails6 form_with (helper)

Objectif: implémenter un bouton radio avec form_with dans rails6 et le décorer avec CSS.

Lutte: l'utilisation de l'assistant a masqué la structure interne du bouton radio.

(1) Contrairement aux autres options, le bouton radio ne peut pas refléter le CSS même si la classe est sélectionnée. (2) Il y a un bogue que le travail de sélection ne peut pas être reflété car l'étiquette pour n'est pas définie.

Le contenu est décrit ci-dessous.

(1) CSS n'est pas reflété dans le sélecteur de classe pour le bouton radio.

HTML ![Capture d'écran 2020-11-14 19.30.25.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/864534/4a6c068a-bed0-ea5c-5b1f- f3b5a44636fd.png)

CSS .second{ font-size: 14px; font-weight: bold; display: block; / * Elémentisation au niveau du bloc * / float: left; / * Spécifiez la justification / le bouclage de l'élément à gauche * / . . }

CSS n'est pas du tout reflété dans une telle description. En regardant l'outil de vérification,

スクリーンショット 2020-11-14 18.28.39.png

Je pense que c'est OK à première vue. En passant, ce que vous pouvez voir dans l'outil de vérification, c'est que la description de l'aide est convertie en HTML, donc si vous la modifiez sur l'outil et qu'elle fonctionne correctement, vous pouvez copier le code modifié dans son intégralité et le changer en type HTML. C'est une main (la transmission des données elle-même peut être au format HTML).

Pour conclure, si vous souhaitez définir CSS pour un bouton radio, vous devez l'écrire dans l'attribut label au lieu de la classe. À ce moment-là, il est également nécessaire de masquer l'affichage du bouton radio standard défini avec l'attribut type = "radio".

donc,

CSS .fields-label label{ font-size: 14px; font-weight: bold; display: block; / * Elémentisation au niveau du bloc * / float: left; / * Spécifiez la justification / le bouclage de l'élément à gauche * / . . }

âge,

input[type=radio] { affichage: aucun; / * Masquer les boutons radio * / }

Ajoutez la description de. Il s'agit d'un bouton radio apparemment décoré.

スクリーンショット 2020-11-14 18.35.42.png

Cependant, lorsque j'ai réellement essayé le travail d'entrée, un problème est survenu. J'aurais dû décrire la spécification qui change de couleur lorsque le bouton est cliqué comme suit, mais cela ne fonctionne pas du tout.

input[type="radio"]:checked + label{ background: blue; / * Spécifiez la couleur d'arrière-plan lorsque la souris est sélectionnée * / color: #ffffff; / * Spécifiez la couleur de la police lorsque la souris est sélectionnée * / }

Il s'agit d'une description qui effectue le mouvement spécifié lorsque l'attribut type = "radio" (y compris l'élément label) est cliqué. Vérifiez à nouveau avec l'outil de vérification.

スクリーンショット 2020-11-14 18.43.06.png

À première vue, il semble qu'il n'y ait pas de problème. Les valeurs avec un identifiant et une valeur différents sont correctement enregistrées dans les options.

(2) Erreur lors de la lecture de l'élément d'étiquette en raison de l'absence de spécification d'étiquette pour l'attribut

J'ai eu beaucoup de mal à identifier la cause de cela, mais après avoir vérifié comment définir l'étiquette lorsque vous n'utilisez pas l'assistant, j'ai découvert.

Comme l'étiquette de n'était pas définie pour id, chaque option n'était pas bien reflétée dans VIEW. Je ne sais pas ce que cela signifie, mais pour le moment, les paramètres CSS du bouton radio ne seront reflétés que lorsque l'identifiant et le libellé correspondent. Alors, définissez l'étiquette pour la même valeur que id. // スクリーンショット 2020-11-14 19.35.12.png

Ceci est le formulaire rempli. étiquette pour = "id" Choix / étiquette Puisque c'est la manière d'écrire, j'ai changé l'ordre.

スクリーンショット 2020-11-14 19.05.09.png

Cela a fonctionné comme ça. En passant, si vous vérifiez avec l'outil de vérification,

スクリーンショット 2020-11-14 19.07.24.png

De cette manière, l'étiquette pour est définie et est liée à id.

Recommended Posts

Comment décorer CSS sur les boutons radio de rails6 form_with (helper)
Bouton [Rails] pour revenir en haut de la page
[Rails] Comment appliquer le CSS utilisé dans l'application principale avec Administrer
Comment faire de https le schéma de l'URL générée par l'assistant d'URL de Rails
[Rails] Comment utiliser la méthode d'assistance utilisée dans l'application principale avec Administrer
[Rails] Comment changer le nom de colonne de la table
[Rails] Comment obtenir le contenu des paramètres forts
[Explication approximative] Comment séparer le fonctionnement de l'environnement de production et de l'environnement de développement avec Rails
[Avec des astuces de retour] Comment présenter React aux rails les plus simples
Comment déplacer une autre classe avec une action de bouton d'une autre classe.
[Rails] Comment afficher une liste de messages par catégorie
Comment utiliser la méthode form_with
L'histoire du refactoring avec un assistant personnel pour la première fois dans une application Rails
[Rails] Comment obtenir l'URL de la source de transition et la rediriger
[Rails] Comment introduire le kaminari avec Slim et changer le design
[Rails / Heroku / MySQL] Comment réinitialiser la base de données de l'application Rails sur Heroku
[Rails] Comment omettre l'affichage de la chaîne de caractères de la méthode link_to
[Rails] Comment changer le titre de la page du navigateur pour chaque page
[Rails] Comment utiliser la méthode de la carte
Comment déterminer le nombre de parallèles
Comment trier une liste de SelectItems
[Rails] Comment utiliser la méthode d'assistance, confimartion
Comment créer un environnement Rails 6 avec Docker
Comment accéder directement à Socket avec la fonction TCP de Spring Integration
Comment convertir un tableau de chaînes en un tableau d'objets avec l'API Stream
[Rails] Comment obtenir les informations sur l'utilisateur actuellement connecté avec devise
Comment comparer uniquement le temps avec Rails (de quelle heure à quelle heure, quelque chose comme)
Comment résoudre la construction de l'environnement local de Ruby on Rails (MAC)!
[Rails] La cause de l'impossibilité de publier des messages était form_with
[Rails] Articles pour les débutants pour organiser et comprendre le flux de form_with
[swift5] Comment changer la couleur de TabBar ou la couleur de l'élément de TabBar avec le code
[Rails] Comment résoudre le décalage temporel de created_at après la méthode de sauvegarde
[Rails] Comment décider de la destination par "voies ferrées"
Comment trouver la cause de l'erreur Ruby
[Ruby on Rails] Comment faire de la destination du lien une partie de l'ID spécifié
[Rails] Comment lire le fichier XML téléchargé depuis l'écran en type Hash
Personnalisez la répartition du contenu de Recyclerview
Comment obtenir l'ID d'un utilisateur qui s'est authentifié avec Firebase dans Swift
[Rails6] Comment connecter la fonction d'affichage générée par Scaffold avec la fonction utilisateur générée par devise
[Rails] Comment enregistrer plusieurs enregistrements dans la table intermédiaire avec une association plusieurs-à-plusieurs
Comment obtenir le jour d'aujourd'hui
Sortie de la façon d'utiliser la méthode slice
[Rails] Comment créer un bouton de partage Twitter
Comment utiliser JQuery dans Rails 6 js.erb
Comment créer une API avec GraphQL et Rails
Comment afficher le résultat du remplissage du formulaire
Comment créer une combinaison unique de données dans la table intermédiaire des rails
[Ruby on Rails] Comment japonaisiser le message d'erreur de l'objet Form (ActiveModel)
[Rails] Comment créer un environnement avec Docker