Elementor WordPress

Call To Action widget di Elementor e colonne di uguale altezza

Tiziano Fogliata

Utilizzando il widget Call To Action di Elementor Pro puรฒ succedere di trovarsi nella situazione di avere due o piรน widget affiancati orizzontalmente ma con altezze diverse. Questo รจ causato dalla differente quantitร  di testo inserita nei titoli o nelle descrizioni del widget.

รˆ possibile sistemare questo problema ricorrendo a del codice CSS. In questo video ti mostro come fare:

Questo รจ il codice CSS che ho utilizzato nel video:

selector .elementor-cta {
     height: 100%;
     display: flex;
     flex-direction: column;
}
 selector .elementor-cta__content {
     display: flex;
     flex-direction: column;
     flex-grow: 1;
     justify-content: flex-start;
}
 selector .elementor-cta__button-wrapper {
     margin-top: auto;
}

Trascrizione del video

In questo video ti mostro come risolvere un problema che potrebbe succedere utilizzando il widget โ€˜Call To Actionโ€™ di Elementor Pro. In pratica, creando diversi widget โ€˜Call To Actionโ€™ con una diversa quantitร  di testo, potresti trovarti in una situazione di questo tipo, nella quale i widget hanno tre altezze diverse. Noi vogliamo ottenere invece una cosa di questo tipo: ossia, anche se lโ€™altezza del testo รจ diversa, tutti e tre i widget presentano la stessa altezza. In questo video ti mostrerรฒ come fare, senza utilizzare alcun plugin aggiuntivo, ma semplicemente con del codice CSS.

Sottolineo anche unโ€™altra cosa: questo problema capita con il widget โ€˜Call To Actionโ€™, non capita invece con il widget โ€˜Riquadro Immagineโ€™. Infatti, qui vedi che ho utilizzato tre widget โ€˜Riquadro Immagineโ€™ con quantitร  di testo diverse, ma la pagina non ha questo problema perchรฉ i singoli widget hanno la stessa altezza. Con il widget โ€˜Call To Actionโ€™, invece, non รจ cosรฌ, perchรฉ se pubblico utilizzando testi diversi o altezze diverse, si presenta il problema.

Vediamo quindi, partendo da zero, come andare a risolvere questo problema. Prima di iniziare, ti faccio notare che nellโ€™esempio che andrรฒ a creare in questo video, utilizzo la funzione Contenitore Flexbox di Elementor, che รจ una delle ultime novitร  introdotte da Elementor. Quindi, non vado ad utilizzare le vecchie sezioni, le vecchie colonne eccetera, ma utilizzo il โ€˜Contenitore Flexboxโ€™ di Elementor.

Per attivarlo, basta andare in Elementor, selezionare โ€˜Impostazioniโ€™, poi โ€˜Caratteristicheโ€™, e sotto la voce โ€˜Contenitore Flexboxโ€™, scegliere di attivare e poi salvare le impostazioni. Una volta fatto, partiamo dalla nostra pagina bianca su Elementor e vado a creare una prima sezione, un primo contenitore. Quindi, clicco su โ€˜+โ€™, scelgo โ€˜Contenitore Flexboxโ€™ orientato in direzione riga, e allโ€™interno di questo contenitore vado ad inserire la โ€˜Call To Actionโ€™.

Un vantaggio del contenitore flexbox รจ che, mentre in passato dovevo creare una sezione, poi mettere tre colonne, e in ogni colonna mettere il widget โ€˜Call To Actionโ€™, ora posso tranquillamente trascinare il widget โ€˜Call To Actionโ€™ direttamente allโ€™interno del mio contenitore e poi lo vado a duplicare. Cosรฌ facendo, vedi che ho tre contenitori.

Ora che li abbiamo inseriti, ti mostro un piccolo intervento da fare in ottica responsive, perchรฉ Elementor, per impostazione predefinita, non va a capo allโ€™interno di un contenitore flexbox. Questo significa che io, andando a duplicare ulteriori contenitori, vedo che continuano ad aggiungersi, perรฒ diventando incredibilmente stretti e quindi molto brutti da vedere. Li vado a eliminare e ti mostro come gestire a livello responsive la dimensione di ogni singolo contenitore.

Il primo intervento da fare รจ: mi posiziono sul primo contenitore, vado in avanzato e, come larghezza, scelgo volendo tre colonne, dimensione personalizzata al 25 percento. Poi, come dimensione, scelgo โ€˜cresciโ€™, quindi attivo la proprietร  โ€˜Flex Growโ€™ che permette appunto al contenitore di crescere andare a occupare lo spazio, mantenendo perรฒ la base partendo dal 25 percento di spazio occupato. Ora vado a replicare queste impostazioni anche sugli altri e vedi che, cosรฌ facendo, i contenitori sono allineati.

Andiamo a vedere anche in ottica responsive. Quindi, vado su tablet: tre contenitori. Su mobile, non mi sta bene perchรฉ voglio invece che il contenitore prenda tutta la riga. Quindi, torno qua, sul primo widget flexbox, nel caso del mobile, scelgo larghezza al 100% e vado a replicare la stessa impostazione anche per gli altri due. Cosรฌ vedi, ho la possibilitร  di gestire gli allineamenti in ottica responsive.

Rimane solo un piccolo intervento da effettuare, ossia andare qua, nellโ€™impostazione del contenitore, e attivare questa voce โ€˜Wrapโ€™, in modo che i contenitori vadano a capo. Cosรฌ facendo, se io dovessi andare a duplicare a crearne uno nuovo, vedi che in automatico vanno a capo e rimane preservato lโ€™impostazione, quindi non vanno ad accumularsi in orizzontale, restringendo i vari spazi. Ora, questi qua sotto non mi servono, quindi li vado a eliminare.

Una volta sistemata la struttura responsive delle mie tre colture affiancate, andiamo a personalizzarle. Quindi, comincio a caricare lโ€™immagine. Quindi, vado qua a pescare le varie immagini. Lโ€™intestazione la mantengo uguale, perรฒ vado a personalizzare il testo delle varie descrizioni, le vado ad aggiungere anche qua e anche nella terza. La differenza perรฒ รจ che qua, nella seconda, vado ad accorciarla e anche qua la vado ad accorciare, ma un pochino meno.

In questo modo, ho tre widget โ€˜Call To Actionโ€™ di diversa altezza. Quindi vado ad aggiornare e ad aprire in una scheda, qua a fianco la pagina, cosรฌ ho la possibilitร  di vedere, senza avere Elementor tra le scatole, come appare la pagina ai miei visitatori.

Come puoi vedere, รจ abbastanza evidente il problema: tre widget โ€˜Call To Actionโ€™, tutti e tre con altezze differenti. Prima di procedere allโ€™intervento, voglio suggerirti una piccola modifica ai widget โ€˜Call To Actionโ€™, per rendere piรน evidente tutti gli interventi che andremo a fare. Quindi torno qua su Elementor e seleziono un widget, vado in โ€˜Avanzatoโ€™, applico unโ€™ombra al bordo, cosรฌ รจ piรน evidente dove finisce e dove inizia il contenitore. Inoltre, qua, sempre nel widget โ€˜Call To Actionโ€™, nello stile, vado a rendere un pochino piรน scuro lo sfondo del contenuto. Ora che ho fatto, vado a replicare la modifica anche sugli altri due, vado ad aggiornare, torno sulla pagina, faccio un refresh.

E qua puoi notare una cosa: in realtร  i widget hanno tutti e tre la stessa altezza, perchรฉ vedi che lโ€™ombra del bordo evidenzia che tutti e tre i widget hanno la stessa altezza. Il problema รจ che cโ€™รจ questo elemento qua interno che si adatta, diventa un poโ€™ piรน alto, un poโ€™ piรน basso, in base alla quantitร  di contenuto. Vediamo di risolvere questo problema.

Il primo passaggio รจ quello di aprire gli strumenti per sviluppatori del tuo browser. Quindi, se utilizzi Chrome, Brave, Firefox, in tutti i browser praticamente hanno una funzione di questo tipo e ci basta cliccare qua sulla pagina col tasto destro del mouse, scegliere โ€˜Ispezionaโ€™. In alcuni casi si chiama โ€˜Analizzaโ€™, e automaticamente il browser apre una schermata di questo tipo, dove qui a lato, o eventualmente in alcuni casi sotto, appare il codice della pagina e vedi che, spostandoti con il mouse sui vari elementi del codice, viene evidenziata la porzione della pagina interessata da quel codice.

Quindi vedi che, ad esempio, se io seleziono qua questo โ€˜divโ€™ con classe โ€˜elementor-widget-containerโ€™, viene evidenziato esattamente quel widget e in questa situazione vedo che questo widget non rappresenta il problema perchรฉ quel widget effettivamente ha la stessa altezza. Il problema nasce invece selezionando il widget โ€˜Elementor CTAโ€™, perchรฉ quello รจ piรน basso di quanto, diciamo cosรฌ, dovrebbe essere, e quindi comincio ad applicare alcune regole CSS per correggere questo problema.

Quindi seleziono qua il blocco โ€˜Elementor CTAโ€™ e qua applico una regola come questa che imposta lโ€™altezza del widget al 100%. Sempre lโ€™elemento โ€˜divโ€™ con la classe โ€˜elementor-ctaโ€™, devo applicare altre due regole. Una รจ questa: โ€˜display: flexโ€™, quindi devo attivare il modello flexbox anche per questo widget e poi la direzione โ€˜flex-directionโ€™ deve essere โ€˜columnโ€™, in modo che il widget si sviluppi in verticale. Come vedi ora la situazione รจ tornata al punto di partenza, ma non ti preoccupare, andremo a risolverla tra poco.

Lโ€™altro intervento che devo fare, questa volta, รจ sullโ€™elemento โ€˜cta-contentโ€˜, quindi questo elemento che racchiude il contenuto del widget, il contenuto testuale del widget. Quindi vado a selezionare questo elemento โ€˜cta-contentโ€˜ e anche qua vado ad applicare alcune regole CSS, ossia queste: โ€˜display: flexโ€™, anche in questo caso, โ€˜flex-directionโ€™ sempre โ€˜columnโ€™ perchรฉ si sviluppi in verticale e ora vado a applicare quella regola che porta, diciamo, questo elemento ad occupare tutto quello spazio in altezza. La regola รจ questa: โ€˜flex-grow: 1โ€™ e vedi che, cosรฌ facendo, anche tutto il contenitore, quindi questo sfondo, va a occupare tutto lo spazio.

Ora mi rimane ancora una cosa da correggere, ossia il pulsante che appare qua mentre io lo voglio alla stessa altezza. Quindi, voglio che si posizioni sempre in fondo. Posso correggere anche questo. Per farlo, mi sposto, mi vado a selezionare qua โ€˜Ispezionaโ€™ il pulsante e vedo che lโ€™elemento pulsante รจ contenuto in questo โ€˜divโ€™ con la classe โ€˜elementor-cta__button-wrapperโ€˜. Vado ad applicare anche qua una regola CSS, che รจ questa: โ€˜margin-top: auto;โ€˜ e vedi che in automatico viene effettuato questo intervento.

Ti consiglio anche qua, nella sezione โ€˜Elementor CTA contentโ€™, di applicare questa regola โ€˜justify-content: flex-startโ€™. Non รจ indispensabile sempre, perรฒ per evitare problemi, per fare in modo che questo elemento parta effettivamente in alto. Tutte queste regole che abbiamo inserito sono indispensabili perchรฉ il tutto funzioni. Se infatti io torno qua sul mio prima la regola sullโ€™elemento โ€˜CTAโ€™ e vado a disattivare queste impostazioni, vedi che torniamo al problema, quindi mi servono tutte queste regole. Ora cโ€™รจ la necessitร  di andare a cementare queste regole CSS allโ€™interno del codice della mia pagina, perchรฉ altrimenti, avendole impostate qua con lo strumento per sviluppatori del browser, mi basta fare un refresh per cancellarle, perchรฉ sono regole che vedo solo io in questo momento. Quindi devo andare a inserire queste regole dentro Elementor. Vediamo come fare.

Quindi mi sposto qua su Elementor. Essendo il widget โ€˜Call To Actionโ€™ disponibile solo in โ€˜Elementor Proโ€™, posso sfruttare unโ€™altra funzionalitร  di โ€˜Elementor Proโ€™, ossia il CSS personalizzato, altrimenti, in alternativa, potrai inserire il CSS, questo codice CSS, allโ€™interno del tema. Quindi, per andare a inserirlo, mi basta andare qua e selezionare il contenitore. Quindi non lo applico a livello di ogni singolo widget, ma lo applico a livello del contenitore, in modo che non devo ripeterlo tre volte per ogni widget che ho. Mi seleziono qua il contenitore. Nelle impostazioni avanzate del contenitore, trovo il campo โ€˜CSS personalizzatoโ€™. E quindi comincio a inserire le regole. La prima cosa che scrivo รจ โ€˜selectorโ€™, in modo che questa regola vada a impattare solo questi contenuti e poi qua vado a copiare le regole che mi servono. La prima, ci ricordiamo, serviva, cioรจ andava a colpire lโ€™elemento con la classe โ€˜elementor-ctaโ€™. Quindi copio, mi sposto qua, punto โ€˜elementor-ctaโ€™, uso il punto perchรฉ รจ una classe CSS.

Poi apro le parentesi e qua inserisco le varie dichiarazioni, che sono queste tre. Copio queste dichiarazioni che ho creato qua allโ€™interno, le incollo e ho inserito la prima. Devo inserire anche lโ€™altra regola. Quindi vado โ€˜selectorโ€™, anche in questo caso torno qua e questa volta devo copiare le dichiarazioni relative alla classe โ€˜elementor-cta__contentโ€™. Quindi copio, โ€˜.elementor-cta__contentโ€™, apro e chiudo parentesi graffa, vado a copiare anche in questo caso tutte queste dichiarazioni e le vado a inserire qua dentro.

Torno allโ€™interno della mia pagina, questa volta devo copiare questa classe, quella relativa al bottone, torno qua su Elementor, a capo, โ€˜selectorโ€™, punto, apro e chiudo parentesi graffa, questa volta senza copiare, me la ricordo dato che รจ molto breve, โ€˜margin-top: auto;โ€™. Aggiorno. Ora posso tranquillamente chiudere questo, fare un refresh della pagina e vedi che tutti e tre i widget hanno la stessa altezza e i pulsanti sono allineati grazie alle regole CSS.

Come visto, conoscendo le regole, il funzionamento CSS, senza installare alcun plugin aggiuntivo, รจ possibile ottenere il risultato desiderato in modo abbastanza semplice.

Scegli di ricevere gratuitamente via email consigli utili per creare, gestire e migliorare il tuo sito WordPress

Questo campo serve per la convalida e dovrebbe essere lasciato inalterato.

Lascia un commento