Sto creando un sito Web di una pagina in HTML5 utilizzando il framework Unsemantic, collegando a div nascosti visualizzati in Fancybox 2 e sto riscontrando problemi nel rendere tutti i diversi tipi di contenuti da ridimensionare correttamente.Come posso ridimensionare il contenuto del testo quando si utilizza Fancybox 2?
Ci sono tre div - uno contenente testo all'interno di un div che è racchiuso all'interno di un div nascosto, quindi posso manipolare il contenuto di conseguenza, uno contenente una galleria di immagini e uno contenente un link a un video di YouTube. Ho creato una classe nascosta che io chiamo tramite CSS come così:
HTML per la porzione di testo:
<a class="fancybox" href="#bio">...blah blah blah...
...then later on...<article class="hidden" id="bio">
HTML per la parte video:
<a class="fancybox fancybox.iframe" href="https://www.youtube.com/video">Videos</a>
CSS :
.hidden {
overflow:hidden;
display:none;
}
Fancybox viene chiamato all'interno delle <head>
tag:
<script type="text/javascript">
$(document).ready(function() {
$("#fancybox-gallery").click(function() {
$.fancybox.open([
{
href : "image_1.jpg",
}, {
href : "image_2.jpg",
}, {
href : "image_3.jpg"
}
], {
helpers : {
thumbs : {
width: 75,
height: 50
}
}
});
});
});
</script>
Con le Fancybox 2 valori predefiniti (autoSize:true
, autoWidth:false
e autoHeight:false
), le immagini ridimensionare di conseguenza, il video viene ridimensionato di conseguenza, ma il link di testo default altezza minima e larghezza massima:
Se ho impostato autoSize
e autoWidth
False, quindi impostare autoHeight
su True, le immagini ancora ridimensionare allo stesso modo, le caselle di testo vengono ridimensionate a circa il 50% della finestra del browser, e il video viene visualizzato con una parte del bianco sul lato destro:
Per essere onesti, mi piace la dimensione delle caselle di testo in questo esempio, e agiscono responsabilmente, ma il video box è sbagliato, quindi è un po 'fastidioso.
Finora ho provato quanto segue senza successo:
- Rimozione del
class="hidden"
e la sua sostituzione con la linea"display:none"
sceneggiatura e poidisplay:inline-block
nel CSS, su consiglio di un amico, ma mi sono reso conto che non avrebbe funzionato; - Dando al testo nascosto div un'impostazione di griglia in linea con il resto dell'HTML, ma ciò ha solo causato il ridimensionamento del div e non il Fancybox.
- Posso impostare una larghezza statica, ma deve essere reattivo, quindi non è accettabile per le mie esigenze;
Quindi, dove sto andando male? La risposta potrebbe essere nell'impostare autoSize:true
e aggiungere uno em
o % width
ai div che ne hanno bisogno?
Sto anche pensando di richiamare uno script aperto che influisce solo sulle immersioni di cui ho bisogno, ma non sono sicuro che sia possibile. Non sono un utente JavaScript giorno per giorno, quindi la mia conoscenza è scarsa.
Vedo tutto tranne lo script di inizializzazione di fancybox – JFK
Ci scusiamo, l'ho aggiunto ora. – tomdot
fancybox è associato al selettore '# fancybox-gallery' ma non vede quel selettore nel codice html – JFK