아무도 왜 이것이 작동하지 않는다고 말할 수 있습니까? 문제는 처음에 페이지의 크기를 변경하거나 페이지를 새로 고침 할 때 .flex-viewport
이 올바른 위치에 있지 않은 경우입니다.Jquery vertical centering .. 오류가 무엇입니까?
여기에서 문제를 확인할 수 있습니다 : http://www2.adcd.ch/?projects=fatti-e-cifre. 스마트 폰이나 태블릿을 사용하여 확인한 경우 의미를 알 수 있습니다. 시작 부분의 이미지 슬라이더가 세로 가운데가 아니기 때문에 페이지를 다시로드 할 때 볼 수 있습니다. 콘솔 오류가 없습니다. 전 jquery가 좋지 않다는 것을 전제로 배우려고합니다! thx 사전에.
var halfWindowHeight = jQuery(window).height()/2;
var halfViewportHeight = jQuery('#content .flexslider .slides li').height()/2;
function putOnTheMiddle(){
var halfWindowHeight = jQuery(window).height()/2;
var halfViewportHeight = jQuery('#content .flexslider .slides li').height()/2;
var result = parseFloat(halfWindowHeight) - parseFloat(halfViewportHeight);
var viewportNavHeight = jQuery('.flex-control-nav li').height();
var paddingViewNav = jQuery('.flex-control-nav').css('padding-top');
var totViewNav = parseFloat(viewportNavHeight) + parseFloat(paddingViewNav);
jQuery('.flex-viewport').css("margin-top", result - parseFloat(totViewNav) + "px");
}
jQuery(window).load(function(halfViewportHeight){
putOnTheMiddle()
});
jQuery(window).resize(function(halfViewportHeight){
putOnTheMiddle()
});
문제는 크기가 모바일의 모든 유형에서 다르기 때문에 스마트 폰에서 요소의 절반을 알 수 없다는 것입니다. 그래서 jQuery를 사용하는 이유입니다. 이미 스크립트를로드하려고했습니다. 페이지의 상단은 변경되지만 아무 것도 변경되지 않습니다! – Michela
@Michela 내 대답이 업데이트되었습니다. 플렉스 박스를 사용해보십시오 :) –
시도했지만 작동하지 않습니다. 다른 방법이있을 것이라고 생각하십니까? – Michela