Hallo an alle und ich hoffe es geht euch gut. Ich verwende Isotope und unten können Sie das JavaScript sehen, das ich geschrieben habe. Ich finde es unmöglich, li
Elemente zu zentrieren, wenn sie die Isotope Elemente sind. Um zu sehen, was ich mit Zentrieren meine, sehen Sie bitte die Bilder unten. Ich habe es geschafft, das ganze Isotop auf den Bildschirm zu zentrieren, aber ich brauche auch die Elemente, die zentriert sind und nicht nur auf der linken Seite schweben.Zentrierende Elemente in Isotop
Fangen wir mit meinem Script-Code starten:
<script>
$(document).ready(function(e) {
$(".ullist li").addClass('element-item');
});
</script>
<script>
$(document).ready(function(e) {
// external js: isotope.pkgd.js
// init Isotope
var $grid = $('.grid').isotope({
itemSelector: '.element-item',
//layoutMode: 'fitRows',
});
//$('.grid').isotope({ layoutMode : 'fitRows' });
// filter functions
var filterFns = {
// show if number is greater than 50
numberGreaterThan50: function() {
var number = $(this).find('.number').text();
return parseInt(number, 10) > 50;
},
// show if name ends with -ium
ium: function() {
var name = $(this).find('.name').text();
return name.match(/ium$/);
}
};
// bind filter button click
$('#filters').on('click', 'a', function() {
var filterValue = $(this).attr('data-filter');
// use filterFn if matches value
filterValue = filterFns[ filterValue ] || filterValue;
$grid.isotope({ filter: filterValue });
});
// change is-checked class on buttons
$('.secmenu ul a').each(function(i, buttonGroup) {
var $buttonGroup = $(buttonGroup);
$buttonGroup.on('click', 'a', function() {
$buttonGroup.find('.is-checked').removeClass('is-checked');
$(this).addClass('is-checked');
});
});});
</script>
<script>
$(function(){
var $container = $('.grid'),
$body = $('body'),
colW = 20,
columns = null;
$container.isotope({
// disable window resizing
resizable: true,
masonry: {
columnWidth: colW,
isFitWidth: true
}
});
$(window).smartresize(function(){
// check if columns has changed
var currentColumns = Math.floor(($body.width() -10)/colW);
if (currentColumns !== columns) {
// set new column count
columns = currentColumns;
// apply width to container manually, then trigger relayout
$container.width(columns * colW)
.isotope('reLayout');
}
}).smartresize(); // trigger resize to set container width
});
</script>
Basic HTML-Struktur:
<ul class="ullist grid">
<li> ... </li>
<li> ... </li>
<li> ... </li>
<li> ... </li>
</ul>
Isotop funktioniert recht gut ohne Probleme (bisher). Dies ist mein aktuelles Layout:
Und dies ist das gewünschte Layout.
Ich habe sogar hier überprüft und versucht, David DeSandro Repository zu verwenden, aber ohne Erfolg. Also bitte, könnt ihr mir helfen, das Layout oben zu erreichen? Vielen Dank im Voraus.
Ja, aber Auf diese Weise werde ich nicht in der Lage sein, die animierten Effekte und die Filterung zu verwenden, die Isotope mir geben. Ich möchte dieses Layout in Isotopencode implementieren. – justme
nur für die Info: flex ist nicht einmal in IE9 unterstützt und Sie brauchen nicht flex-direction schreiben: row, weil es der Standardwert ist und ein anderes: am häufigsten benutzt man die flex-items statt flex-basic. –