Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    258

    Stile prima colonna tabella

    Buongiorno ho un problema con lo stile della prima colonna di una tabella. Io utilizzo questa regola css


    codice:
    # td:first-child {
        color: red !important;
        text-align: left !important;
        padding-left: 10px !important;
    }

    Tutto funziona correttamente, ma se tipo ho un unione di celle, la colonna successiva viene considerata la prima. Come potrei risolvere?


    Faccio un esempio pratico:


  2. #2
    Moderatrice di CSS L'avatar di ResianTaxidrive
    Registrato dal
    Oct 2007
    residenza
    Udine
    Messaggi
    2,766
    Secondo me potresti modificare il selettore così:
    codice:
    td:first-child[rowspan]
    e anche quando la tabella è normale mettere
    codice:
    <td rowspan="1">testo</td>

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    258
    Ciao, ho provato ma il problema che io faccio salvare la tabella tramite ckeditor, quindi quando l'utente salva il rowspan viene perso.

    Io per avere un template sempre uguale della tabella, ho dato un template da utilizzare, cosi loro utilizzo sempre la stessa struttura:

    <table>
    <caption>
    Tariffario
    </caption>
    <tbody>
    <tr>
    <th> </th>
    <th>Titolo</th>
    <th>Titolo</th>
    </tr>
    <tr>
    <td>testo</td>
    <td>trsto</td>
    <td>testo</td>
    </tr>
    <tr>
    <td>testo</td>
    <td>testo</td>
    <td>testo</td>
    </tr>
    </tbody>
    </table>

  4. #4
    Moderatrice di CSS L'avatar di ResianTaxidrive
    Registrato dal
    Oct 2007
    residenza
    Udine
    Messaggi
    2,766
    ma se il rowspan viene perso come fai a creare una tabella con la struttura che hai mostrato sopra?

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    258
    io faccio inserire in modalità codice quella struttura che ho postato, poi l'utente se deve aggiungere righe o fare modifiche lo fa tramite la funzione di ckeditor (tasto destro)... Rifaccio un prova...


    Ho fatto un ulteriore prova. Il problema non è che lo perde ma se l'utente aggiunge ulteriori righe il rowspan non viene incluso.
    Ultima modifica di sixdas; 04-07-2016 a 17:15

  6. #6
    Moderatrice di CSS L'avatar di ResianTaxidrive
    Registrato dal
    Oct 2007
    residenza
    Udine
    Messaggi
    2,766
    Ma con la struttura che hai postato non verrà mai fuori quella tabella della seconda figura, o sbaglio?
    Cioè, io ho usato un selettore con attributo rowspan perchè altrimenti non saprei come far venire fuori la tabella della seconda figura, a meno di non annidare più tabelle ma non mi pare il caso.

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    258
    La struttura che ho postato e quella base, e fa venir fuori una tabella come la figura 1, ma l'utente potrebbe unire le celle rendendole come nella seconda figura con il rowspan.

    PS: le tabelle delle foto sono fatte con word solo per esempio...

  8. #8
    Moderatrice di CSS L'avatar di ResianTaxidrive
    Registrato dal
    Oct 2007
    residenza
    Udine
    Messaggi
    2,766
    Bene e poi hai scritto che al momento del salvataggio il rowspan viene perso quindi io deduco che l'utente non avrà mai la possibilità di fare una tabella come quella delle seconda figura. Almeno, questo è quello che capisco, forse mi perdo qualche pezzo?

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    258
    Si, poi ho modificato il post, perchè ho fatto un ulteriore prova, in realtà non perde quello che inserito tramite la struttura che io fornisco, ma se provano ad aggiungere un ulteriore riga.

    puoi fare una prova qui http://ckeditor.com/demo

  10. #10
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ciao, provo a darti due possibili soluzioni.

    1 - Se il numero di colonne resta fisso (ad esempio 3, come sul tuo esempio) allora puoi usare il selettore :nth-last-child() indicando il numero della colonna da considerare, contando dall'ultima (quindi 3). Ovviamente si tratta di CSS3 ed ovviamente è necessario che il numero di colonne resti invariato su tutte le righe, cioè non funzionerà se all'interno di una riga ci sono celle unite con colspan.
    Esempio:
    codice:
    <!DOCTYPE HTML>
    <html>
      <head>
        <title>Esempio</title>
        <meta charset="utf-8">
        <style type="text/css">
          table,td,th{
            border: 1px solid #000;
          }
          tr+tr>:nth-last-child(3){
            color: red;
          }
        </style>
      </head>
      <body>
        <table>
          <caption>
            Tariffario
          </caption>
          <tbody>
            <tr>
              <th> </th>
              <th>Titolo</th>
              <th>Titolo</th>
            </tr>
            <tr>
              <td rowspan="2">testo</td>
              <td>testo</td>
              <td>testo</td>
            </tr>
            <tr>
              <td>testo</td>
              <td>testo</td>
            </tr>
            <tr>
              <td>testo</td>
              <td>testo</td>
              <td>testo</td>
            </tr>
          </tbody>
        </table>
      </body>
    </html>
    2 - Potresti modificare leggermente la struttura della tabella usando <th> per le celle della prima colonna, così da poterle selezionare facilmente da css. In tal caso CKEditor sembra funzionare perfettamente quando si inseriscono nuove righe, cioè la prima cella viene creata automaticamente come <th>, ed eventuali celle unite con rowspan sembra non diano alcun problema.
    Esempio:
    codice:
    <!DOCTYPE HTML>
    <html>
      <head>
        <title>Esempio</title>
        <meta charset="utf-8">
        <style type="text/css">
          table,td,th{
            border: 1px solid #000;
          }
          tr+tr>th{
            font-weight: normal;
            color: red;
          }
        </style>
      </head>
      <body>
        <table>
          <caption>
            Tariffario
          </caption>
          <tbody>
            <tr>
              <th> </th>
              <th>Titolo</th>
              <th>Titolo</th>
            </tr>
            <tr>
              <th rowspan="2">testo</th>
              <td>testo</td>
              <td>testo</td>
            </tr>
            <tr>
              <td>testo</td>
              <td>testo</td>
            </tr>
            <tr>
              <th>testo</th>
              <td>testo</td>
              <td>testo</td>
            </tr>
          </tbody>
        </table>
      </body>
    </html>
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.