Viewing 27 posts - 1 through 27 (of 27 total)
  • Author
    Posts
  • #689059

    Hey guys,

    I wonder if there´s a way to create a fixed “curtain” -like footer like at this demosite (not Enfold I know)

    When you scroll down to the footer you can see that the main content opens the footer like lifting a curtain. The footer is hidden behind the main content until you scroll to it.

    Is that possible with Enfold?

    Cheers
    Michael

    #690080

    Hi Michael!

    Thank you for using Enfold.

    Yes, this is possible. Add this in the Quick CSS field:

    @media only screen and (min-width: 768px) {
    .container_wrap {
        z-index: 5;
    }
    
      #footer {	
          position: fixed;
          bottom: 58px;
          left: 0;
          width: 100%;
          z-index: 0;
      }
    
      #socket {
          position: fixed;
          bottom: 0;
          left: 0;
          width: 100%;
          z-index: 1;
      }
    
      #footer-socket-spacer {
          position: relative;
          width: 100%;
      }
    
    .avia-section .main_color, .avia-section .alternate_color, .av-layout-grid-container {
        z-index: 1000;
        position: relative;
    }
    
    #header {
        z-index: 1001;
    }
    }
    

    And the following code in the functions.php file:

    add_action('wp_footer', 'ava_custom_script');
    function ava_custom_script(){
    ?>
    <script type="text/javascript">
    (function($) {
        function gh() {
    		var socket = $('#socket'),
    			footer = $('#footer'),
    			spacerh = socket.height() + footer.height(),
    			spacer = '<div id="footer-socket-spacer"></div>';
    
    		$(spacer).insertBefore(footer).height(spacerh);
    	}
    
    	gh();
    })(jQuery);
    </script>
    <?php
    }

    Make sure that the content containers have backgrounds. This modification is not perfect so you will have to make a few adjustments.

    Regards,
    Ismael

    #690175

    Hi Ismael,

    thanks for the response but it doesn´t work. Check out https://dev.der-prinz.com/enfold/ where I have added what you suggested. It fixes the footer and socket to the bottom but the content before the footer doesn´t cover the footer but it scrolls below the footer.

    Any other suggestions?

    Cheers
    Michael

    #691080

    Hi!

    We updated the css code above. Please try it again.

    Make sure that the content containers have backgrounds. This modification is not perfect so you will have to make a few adjustments.

    Cheers!
    Ismael

    #691118

    but there has to be in the function an option for window resize – because footer height changes with content. On small screens we got a growing footer height (with socket too- but not so often)

    It has to proof in time (dynamically) the height of socket and footer – how can we do that?
    The code above works if we actualize the window but does not react on window-resize

    • This reply was modified 8 years, 2 months ago by Guenni007.
    #691135

    still testing – but im on a good way i think

    hm – i don’t know if every section or grid etc got this class (container_wrap) if so we can do that:

    add_action('wp_footer', 'ava_custom_script');
    function ava_custom_script(){
    ?>
    <script type="text/javascript">
    (function($) {
     
        $(window).load(function() {
        	var socket = $('#socket'),
    			footer = $('#footer'),
    			spacerh = socket.height() + footer.height();
    
    			$('#main .container_wrap:nth-last-child(3)').css('padding-bottom', spacerh );
        });
    
        $(window).resize(function() {
        	var socket = $('#socket'),
    			footer = $('#footer'),
    			spacerh = socket.height() + footer.height();
    
    			$('#main .container_wrap:nth-last-child(3)').css('padding-bottom', spacerh );
        });
    
    })(jQuery);
    </script>
    <?php
    }

    and in quick css :

      #footer {	
          position: fixed;
          left: 0;
          width: 100%;
          z-index: 1;
          bottom: 58px
      }
    
      #socket {
          position: fixed;
          bottom: 0;
          left: 0;
          width: 100%;
          z-index: 1;
      }
    
    #footer-socket-spacer {
        clear: both;
        position: relative;
        width: 100%;
    }
    • This reply was modified 8 years, 2 months ago by Guenni007.
    #691194

    and perhaps we should take instead of .height( ) the .outerHeight( )

    see Result here: Link

    btw: the footer background-color is a gradient – just a test – nothing i will realy work with.
    And diagonal backgrounds are just to see what happens realy ( landing page )

    • This reply was modified 8 years, 2 months ago by Guenni007.
    #691214

    But – I think this is only a nice feature for screens with more than 768px – so pack it into a media querry
    not enough place for content with a fixed footer. Maybe set the footer to display: none

    #691332

    ok i see it works good but this is not the thing which you are looking for.
    the footer and socket should be on bottom at the end of the scroll.

    #691340

    Hey!

    Thanks a lot for the real hard work on that query Guenni.

    Please do let us know if that works for you.

    Regards,
    Basilis

    #691356

    i’m not shure if this is what you try to get:

    http://webers-testseite.de/elegant/

    i don’t like the way it removes on scrolling back it would be nice to have here a animation of footer gone.

    #691457

    Hi!


    @Guenni007
    : You’re right about the resize function. The footer and socket should be positioned fixed at the bottom of the viewport but it has to be covered by the main content container and should only be visible at the very bottom of the page. This is what the OP is trying to replicate. http://demos.artbees.net/jupiter5/hera/

    Cheers!
    Ismael

    #691566

    ohha – this is what i got ( i set the footer to a given height – because otherwise the effect is not so clear)
    if you like it – i will share it – but without a child-theme footer.php it does not work. The thing is to get the socket out of main – not so hard to make but that makes things a lot easier.
    http://webers-testseite.de/huth/

    #691572

    Hey Guenni007,

    this looks very close to what I want. Except I want the socket and the footer to work like the socket does in your example.

    By the way I also like the effect with the “overlapinng” logo.

    Cheers
    Michael

    #691586

    Lass uns mal gerade deutsch hier miteinander reden.

    In dem Beispiel oben (nicht Enfold) ist es aber wohl schon so wie jetzt bei mir im Beispiel.

    Wie gesagt die Sache wird einfacher, wenn man die footer.php dahingehend bearbeitet, dass die interessierenden Container ( in deinem Fall nun beide) nicht mehr in Main liegen. Die bearbeitete footer.php landet dann halt in child-theme folder.

    Das ist der momentane Code (wobei ich wirklich kein Profi bin, was die php und jquery Sachen betrifft – ich denke da ließe sich einiges abändern):

    add_action('wp_footer', 'ava_custom_script');
    function ava_custom_script(){
    ?>
    <script type="text/javascript">
    (function($) {
        $(document).ready(function(){
            $(document).scroll(function(){
    
    		    var socketh = $('#socket').outerHeight(),
    			footerh = $('#footer').outerHeight(),
    			spacerh = $('#socket').outerHeight() + $('#footer').outerHeight();
    
                        if( $(window).scrollTop() >= $(document).height() - $(window).height() - socketh )
                        {   
                            $('#socket').css('position', 'fixed' );
    			$('#main').css('padding-bottom', socketh );
                        }
                        else {
                            $('#socket').css('position', 'relative' );
    			$('#main').css('padding-bottom', 0 );
                        }
            });
        });
    })(jQuery);
    </script>
    <?php
    }

    weiß nicht ob ich die document ready funktion wirklich brauche. Die scroll funktion gibt mir zurück, ob ich den Bottom erreicht habe.
    Wenn das so ist wechsel ich ein paar css Anweisungen.

    Ich glaube ich muss mich jetzt endlich mal in jquery einarbeiten – scheint ja viele möglich zu sein.
    Ich versuche mal die Seite oben umzustricken.

    PS : die outerHeight nahm ich damit ich margins und borders gleich mitberücksichtige.

    • This reply was modified 8 years, 2 months ago by Guenni007.
    #691630

    ok – schau jetzt mal ob es das ist was Du suchst!
    http://webers-testseite.de/huth/

    #691810

    Meinst Du hier? http://webers-testseite.de/huth
    Dann ist es NICHT das was ich suche.

    Ich meine das hier: https://dev.der-prinz.com/jupiter/

    #691813

    hm – dein link im ersten Thread sieht aber anders aus.
    Das scheint mir doch lediglich eine Kombination aus z-index und fixed position zu sein.
    Zudem muss die Seite eine Background-color haben (wie dort mit #theme-page auf weiss festgelegt)

    #691816

    Naja, wenn man genau hinschaut, ist es durchaus das Gleiche. An die Kombination aus z-index und fixed position hatte ich auch gedacht, hab es aber nicht hinbekommen.

    #691852

    naja – das eine scrollt schon erst mit hoch am content . – anyway:

    schau jetzt nochmal bei Huth nach – dann gibt es den Kurs dazu bzw – glaube ich lieber in zip zum Download

    • This reply was modified 8 years, 2 months ago by Guenni007.
    #691859

    Jepp. Jetzt passt es bei Huth. Bin aber mal gespannt, wie Du das gemacht hast.

    #691880

    Download Link

    im Wesentlichen steht alles da drin.
    Wie gesagt die footer.php habe ich so verändert, dass die nicht mehr in main liegen !
    Bisher habe ich da keine Probleme festgestellt.
    Und dann ist es z-index hauptsächlich

    Bei Boxed Layout musst du natürlich dann die footer und socket anpassen, da die ja nicht mehr in main liegen gelten die Regeln dann nicht mehr ( von wegen 100% weite)

    Wenns Probleme gibt hier melden – oder meinem Nick ist auch die Webseite hinterlegt (schäm, meine ist noch nicht sehr schön gemacht. – hab zu viel um die Ohren – da muss ich jetzt mal ran) dann via e-Mail

    ich habe es jetzt auch mal auf der Testseite : http://webers-testseite.de/elegant gemacht , und dabei gesehen, dass ich für grid auch eine css deklaration brauchte.

    • This reply was modified 8 years, 2 months ago by Guenni007.
    #691911

    ps im zip da muss es im php natürlich bei beiden abfragen:
    spacerh = socketh + footerh - 3 ;

    sein – sorry – flüchtigkeit

    #692080

    Cool, aber bei mir funktioniert das nicht. Keine Ahnung warum.

    Naja, letztlich wäre es halt einfach schön, wenn diese Funktion in den Theme Optionen schaltbar wäre, wie bei Jupiter. Ich bin echt ein großer Freund von Enfold, aber teilweise hinkt es bei den Funktionen anderen schwer hinterher.

    Gruß
    Michael

    #692112

    sorry in meinem zip war noch eine etwas ältere css
    du hast ausschließlich container – kaum color-section genutzt. Ich hatte auf meiner Testseite nur Color-sections
    Wie gesagt der Footer und Socket sind quasi immer da müssen aber durch z-index und hintergrundfarbe überdeckt sein

    wenn du das ergänzt muss es nun gehen: (immer wenn die durchscheinen musst du schauen welche container deklaration du hast.
    .container_wrap konnte ich nicht nehmen, da footer und socket die auch haben

    .avia-section, .av-layout-grid-container, .main_color {
        z-index: 3 !important;
    }

    ich denke dann sind alle main container mit abgedeckt

    PS : solange footer und socket in main liegen wird es schwierig das zu realisieren. Ich hab das echt versucht. So ist es leichter.
    Was dagegen spricht die eigentlich per default draußen zu haben ? klar ist wenn du auf boxed design umstellst mußt du footer und socket so setzen wie container_wrap
    könnte man übrigens im php mit einbauen – versuch das gleich mal. denn die Abfrage $(‘body’).outerWidth() sollte es geben.

    • This reply was modified 8 years, 2 months ago by Guenni007.
    #692119

    Jepp. Jetzt geht´s. Klasse gemacht.

    Ich hab das mal als Feature Request reingegeben. Mal schauen, ob das irgendwann als Option kommt ;-)

    #692123

    wenn du das als funktion nimmst musst du bei boxed nicht mehr aufpassen wegen der footer weite:

    add_action('wp_footer', 'ava_custom_script');
    function ava_custom_script(){
    ?>
    <script type="text/javascript">
    (function($) {
    
        $(document).ready(function(){
    
                        var bodyw = $('body').width();
      
                            $('#footer').css('max-width', bodyw );
                            $('#socket').css('max-width', bodyw );
    
        });
    
        $(window).load(function() {
                var socketh = $('#socket').outerHeight(),
                footerh = $('#footer').outerHeight(),
                spacerh = socketh + footerh - 3 ;
      
                $('#abstand').css('height', spacerh );
    
        });
    
        $(window).resize(function() {
                var socketh = $('#socket').outerHeight(),
                footerh = $('#footer').outerHeight(),
                spacerh = socketh + footerh - 3  ;
      
                $('#abstand').css('height', spacerh );
    
        });
    
    })(jQuery);
    </script>
    <?php
    }

    So noch eines – bei fixed Frame funktioniert das auch, du musst nur die Werte anpassen. Je nachdem was da als frame eingestellt ist

Viewing 27 posts - 1 through 27 (of 27 total)
  • You must be logged in to reply to this topic.