WEXTENSIBLE (Galego)

Actualización Marzo 2014

Alguén preguntou se unha pestana de pestanas podería ser incluída á súa vez doutro destes contedores. Fixen unha proba e vin que era posible sen facer modificacións excesivas. E xa que tamén deu a posibilidade de contedores con varias filas de pestanas. Actualizo este tema para incorporar esas melloras.

Todos os exemplos de contedores de pestanas nesta páxina teñen o CSS necesario nun elemento <style> do

e JS está en <script> na parte inferior da páxina. Aqueles que finalmente vou usar neste sitio non serán estes, senón o que podes ver no seguinte número, versións para este sitio, con algunhas modificacións cuxa motivación explícase sobre ese tema.

Se non o fas Teña tempo para ler o tema ou quere dar un aspecto rápido, aquí ten unha páxina de exemplo co mínimo indispensable, en que código fonte pode ver como inserir o primeiro contenedor con pestanas sobre o tema.

Contenedor de pestanas en dúas filas dunha táboa

O primeiro contenedor de pestanas presentado a continuación é o que está estructurado nunha táboa con dúas filas. Podo un exemplo aquí con 3 pestanas:

Exemplo: unha liña de pestanas

Este é o código HTML de Esta estrutura:

Como vemos que é unha táboa con 2 filas . No primeiro, poñemos as pestanas nas células de título <th>, alternando unha cela que fará un oco (clase tabcks) e outro co Título da pestana (tabck). No dos buracos poñemos un espazo non separable &nbsp; para forzar que o ancho do buraco non se modifique. As células que fan que as pestanas identifican engadindo o número ao nome da clase con id="tabck-N" onde n é o número desta pestana. Cada un ten un evento onclick="activarTab(this)" para activar esa pestana.

A segunda fila ten unha única cela que abrangue tantas celas como na primeira fila co atributo colspan="6", xeralmente será de 2n tabulacións contando cos buracos. Entón temos n contedores <div> coa clase tabdiv e identificada do mesmo xeito con .

Coa actualización deste compoñente en marzo de 2014 engadín os atributos data-min e data-max ao Táboa. Tamén identificoi o elemento IV ID = “44C2A95407” que contén o <div class="tabdiv"> con id="tab-N". As versións anteriores seguirán traballando aínda que non contemplen estes cambios, que serven para incluír pestanas dentro dos contedores e tamén para envases con varias filas de pestanas como se verá a continuación. Por agora só imos dicir que o rango dos IDs das pestanas é declarado no data-min e data-max, mentres que a identificación

de id="tab-N" será o primeiro índice deste rango.

O estilo para obter esta estrutura está no encabezado deste Páxina:

A táboa, que ten o modelo de bordo aberto como explicamos, o facemos co fondo transparente para actuar sobre o efecto dos buracos entre as pestanas na parte inferior do recipiente onde está. Para os buracos, as pestanas e a célula inferior teranse en conta a orde no sobrescrito dos bordos. Por suposto, ten que manter a coherencia nas cores usadas. Así, a cor gray é o gris no bordo mentres que o

480BA6BC44 “>

é o gris claro dos fondos.

Finalmente, os contedores div que eventualmente teñen que ter o contido que se presentará de forma adecuada. O estilo anterior é xenérico e serve para todos os contedores. Especificamos o 100% de ancho e a alta será automática. Entón, para cada aplicación, estableceremos as medidas que necesitamos.Polo tanto, para o primeiro exemplo anterior desta páxina temos este estilo que sobrescribe a anterior:

para activar unha pestana e desactivar os demais, temos que usar JavaScript. Este código está no encabezado desta páxina:

No bucle é por un total de pestanas. Polo tanto, comezamos a declarar un máximo de pestanas MAXTABS que poderiamos inserir e por iso non temos que estar cambiando con cada aplicación o límite superior do circuíto interno na función que activa a pestana .. É dicir, este script serve sen tocar-lo por calquera número de pestanas igual ou menos que ese límite.

Despois da actualización de marzo de 2014 e manter a compatibilidade cos contedores existentes, mantemos a operación exposta no anterior parágrafo para non ter que modificar o HTML deses contedores. Con todo usando os atributos data-max e data-min na táboa, xa non será necesario iterar por todos os elementos ata ese límite máximo, Para que poidamos ignorar a variable MAXTABS.

Coa carga da páxina activamos a primeira pestana ou a que queremos. A continuación, a función

execútanos o evento onclick() situado nas pestanas. O argumento trae unha referencia á cela onde se fixo ese clic. Obtemos o identificador que está no camiño id="tabck-N" e extrae o número n con split(). Localizamos o contenedor <div class="tabdiv-N"> para aquela N. A continuación, encaixamos a todas as pestanas activando a corrente e desactivación dos outros. Activámonos con display = "block" e as cores de fondo, bordo e letras desexadas e desactivan igualmente pero con ningún valor para display. Explícanse as pestanas en varias filas a continuación.

Contenedor de pestanas dentro dunha pestana

A actualización de marzo de 2014 deste compoñente foi debido á necesidade de poñer un recipiente de pestanas nunha pestana de outro recipiente. No seguinte exemplo temos un exterior con tres pestanas. No primeiro, poñemos outro recipiente con dúas pestanas.

Exemplo:

primeiro segundo terceiro

ID = TABDIV-0

Contido da primeira pestana.

Lorem Ipsum Pain Sit AMET, CONSEPTUER ADIPISCING ELIT. Donec Sollicititude Liberie ID ID ELIT. SED EUISMOD NEQUE NEQUY. Nam Dignissim Urna Vel Urn. Nunc Aliquet. NonC Vel Dui Mattis Magna Varius Condimentum. Etiam Lacus Enim, Aiquam Ultricies, Luctus Ut, Pleasure ID, Lectus. Vestibulum Laoret Commodo Tritor. NUNC Eget Urna. Suspendisse AC Orci. Vivamus que Traoror Faciliza Velit Interdum Blandit.

id = tabdiv-1

Outro contido para a segunda pestana

id = tabdiv -2

O último contido da pestana 3

primeiro

segundo terceiro

id = tabdiv-100

tr /

cuarto quinto
id = tabdiv-200
id = tabdiv-201

iD = tabdiv-101

id = tabdiv-102

Usamos o intervalo data-min="100" e data-max="102" a Especifique as tres pestanas da táboa exterior. Na <div> da primeira guía que poñemos outra táboa interior con estrutura de guía e usando a gama data-min="200" e data-max="201" das súas dúas pestanas.

O mesmo script exposto na sección anterior é responsable de iterar polas pestanas de cada rango, limitado a actuar en cada contedor. Como nunha páxina podemos ter moitos contedores de pestanas, para organizarnos nós mesmos podemos usar rangos como 0..99, 100..199, 200..299, etc. Para cada un dos envases da páxina. Particularizamos os anchos dos dous contedores con este CSS (situado no encabezado desta páxina):

Contenedor con varias fileiras de pestanas

e xa posicións cunha actualización (marzo de 2014 ), porque non imos a posibilidade de ter varias filas de pestanas.

Exemplo:

sétimo oitava
cuarto quinto sexta
primeiro segundo terceiro

id = tabdiv-300
id = tabdiv-301

id = tabdiv-303

id = tabdiv-304
id = tabdiv-305
id = tabdiv-306
id = tabdiv-307

O código HTML para isto é así:

Primeiro a táboa debe tomar un atributo data-filas sen Sen valor Entón vemos que hai tres filas para pestanas. A penúltima fila da mesa é a liña activa. É antes da liña de clase "filadiv" que inclúe os contidos que se amosan e esconden. Cando facemos clic nunha pestana das filas superiores, trasladamos esa fila para que sexa a liña activa. Esta peza de script está dentro da función

exposta nunha sección anterior:

Tamén resaltamos que podemos poñer menos tabulacións seguidas.A primeira fila ten dúas pestanas e os demais teñen tres. Isto conséguese engadindo un th separador (clase "tabcks") cun para cubrir 2 columnas, xa que as columnas totais nese exemplo deben ser 6.

Contenedor de pestanas en órganos de mesa

Esta segunda estrutura é un pouco máis complexa que a anterior porque cada recipiente de cada un A pestana está incluída nun corpo <tbody> da táboa. Sabemos que unha táboa sempre ten un polo menos nestes elementos, aínda que pode ser ignorado cando o código está escrito. Entón, usamos un cabeceiro de mesa <thead> para localizar as pestanas e 3 corpos <tbody> para os contedores.

Exemplo:

O HTML desta estrutura é:

As pestanas están na cabeceira da táboa Os eventos onclick="activarTabB(this, 'p-N') permitiranos activar a pestana n e desactivar o resto. Os contidos están nos corpos <tbody>, onde podemos poñer o número de filas <tr> que queremos. Pero cada fila só terá unha cela <td> que cubrirá tantas columnas como as pestanas declaradas colspan="N" para n pestanas.

Este é o estilo que tamén está no encabezado deste documento:

Este é o JavaScript que tamén está neste documento:

A operación é similar á visto no Sección anterior. Activamos a primeira pestana que queremos coa carga da páxina. A continuación, obtemos o , buscamos o seu pai e logo obtemos a colección de corpos da mesa para iterar por eles. O resto é o mesmo, activando a pestana actual neste caso con tbs.style.display = "table-row-group" e desactivalo con ningún valor.

Deixa unha resposta

O teu enderezo electrónico non se publicará Os campos obrigatorios están marcados con *

primeiro segundo terceiro
Contidos da primeira pestana.

Lorem Ipsum Dor Sit AMET, Consxerir Adipiscing Elit. Donec Sollicititude Liberie ID ID ELIT. SED EUISMOD NEQUE NEQUY. Nam Dignissim Urna Vel Urn. Nunc Aliquet. NonC Vel Dui Mattis Magna Varius Condimentum. Etiam Lacus Enim, Aiquam Ultricies, Luctus Ut, Pleasure ID, Lectus. Vestibulum Laoret Commodo Tritor. NUNC Eget Urna. Suspendisse AC Orci. Vivamus Qui Trortor Faciliza Velit Interdum Blandit.

Outros contidos para a segunda pestana

O último contido da pestana 3