• Emergency

    Public Safety


    When an emergency happens, know that St. Tammany Parish is equipped to respond immediately. We have the manpower and the resources to utilize in times of crisis. Count on us.


    Read More>>
  • Careers

    Join our Krewe


    St. Tammany Parish Government is comprised of employees committed to making this community the best it can be. Find out about current openings and how to join our team.


    Read More >>
  • Permits

    Safety First


    When you decide to build, remodel, or tackle an extensive household project, obtain a permit first. Our permits process is streamlined and convenient. We call it a “one stop shop.”


    Read More>>
  • Recreation

    It's a lifestyle


    Blueways, byways, trail ways and the arts — St. Tammany is teeming with recreational escapes for every taste. From sailing Lake Pontchartrain, to biking the trace, to a live play production, it happens here. 


    Read More>>
Vinaora Nivo SliderVinaora Nivo SliderVinaora Nivo SliderVinaora Nivo SliderVinaora Nivo SliderVinaora Nivo SliderVinaora Nivo Slider

Be the Brain Behind Change!

Outstanding ideas fuel the engines that power progress. We want your ideas on change for the better for St. Tammany Parish.Do you have a suggestion, an idea, something you want to see in our parish that is not here already? Find your place in the momentum because we want to hear from you. Be the Brain Behind The Change. Submit Your Idea Here

 
 

Forms

We set out in Foundation 3 to create an easy to handle, powerful, and versatile form layout system. A combination of form styles and the Foundation grid means you can do basically anything you need.

The Basics

Form elements in Foundation 3 are styled based on their type attribute rather than .input-text classes, so the Scss/CSS is much simpler.

Inputs in Foundation 3 have another major change — they are full width by default. That means that inputs will run as wide as the column that contains them. However, you have two options which make these forms extremely versatile:

  • You can size inputs using column sizes, like .six.
  • You can create row elements inside your form and use columns for the form, including inputs, labels and more. Rows inside a form inherit some special padding to even up input spacing.

Row Layouts

Here's an example of a form layout controlled with rows and columns.

  • Sometimes you want a form with labels to the left of your inputs. Piece of cake. You can add a class of .right to a label to have it align to the right, and if your label is next to an input (in another column) adding a class of .inline will have it vertically center against an input.

  • 
    <!-- Row Layout for forms -->
    <form>
      <label>This is a label.</label>
      <input type="text" placeholder="Standard Input" />
      <label>Address</label>
      <input type="text" class="twelve" placeholder="Street" />
      <div class="row">
        <div class="six columns">
          <input type="text" placeholder="City" />
        </div>
        <div class="three columns">
          <input type="text" placeholder="State" />
        </div>
        <div class="three columns">
          <input type="text" placeholder="ZIP" />
        </div>
      </div>
      <textarea placeholder="Message"></textarea>
    </form>
    
    <!-- Right aligned and inline labels -->
    <form>
      <div class="row">
        <div class="two mobile-one columns">
          <label class="right inline">Address Name:</label>
        </div>
        <div class="ten mobile-three columns">
          <input type="text" placeholder="e.g. Home" class="eight" />
        </div>
      </div>
      <div class="row">
        <div class="two mobile-one columns">
          <label class="right inline">City:</label>
        </div>
        <div class="ten mobile-three columns">
          <input type="text" class="eight" />
        </div>
      </div>
      <div class="row">
        <div class="two mobile-one columns">
          <label class="right inline">ZIP:</label>
        </div>
        <div class="ten mobile-three columns">
          <input type="text" class="three" />
        </div>
      </div>
    </form>
    

Fieldsets

Simple elements that can contain all or part of a form to create better division.

  • Fieldset Name
  • 
    <form>
      <fieldset>
    
        <legend>Fieldset Name</legend>
    
        <label>This is a label.</label>
        <input type="text" placeholder="Standard Input" />
    
        <label>Address</label>
        <input type="text" />
        <input type="text" class="six" />
    
      </fieldset>
    </form>
    

Pre/Postfix Labels & Actions

Foundation forms support actions tied to buttons, and prefix / postfix labels, through a versatile approach using special grid properties. Essentially you can use a 'collapsed' row to create label / action / input combinations. Here are a few examples.

Note: for these prefix and postfix labels we're using the mobile grid to size our labels correctly on small devices.

  • #
    .com
  • 
    <!-- Prefix label -->
    <label>Input with a prefix character</label>
    <div class="row">
      <div class="four columns">
        <div class="row collapse">
          <div class="two mobile-one columns">
            <span class="prefix">#</span>
          </div>
          <div class="ten mobile-three columns">
            <input type="text" />
          </div>
        </div>
      </div>
    </div>
    
    <!-- Postfix label -->
    <label>Input with a postfix label</label>
    <div class="row">
      <div class="five columns">
        <div class="row collapse">
          <div class="nine mobile-three columns">
            <input type="text" />
          </div>
          <div class="three mobile-one columns">
            <span class="postfix">.com</span>
          </div>
        </div>
      </div>
    </div>
    
    <!-- Postfix action -->
    <div class="row collapse">
      <div class="ten mobile-three columns">
        <input type="text" />
      </div>
      <div class="two mobile-one columns">
        <a class="button expand postfix">Search</a>
      </div>
    </div>
    

Error States

Foundation includes error states for labels, inputs and messaging that you can have your app generate programatically.

You can attach a class of .error either to the individual elements (label, input, small) or to a column/div.

  • Invalid entry
    Invalid entry
  • 
    <div class="row">
      <div class="five columns">
        <label class="error">Error</label>
        <input type="text" class="error" />
        <small class="error">Invalid entry</small>
      </div>
    
      <div class="five columns end error">
        <label>Another Error</label>
        <input type="text" />
        <small>Invalid entry</small>
      </div>
    </div>
    

Large Forms

Here's an example of how you can use the grid to build out a complex form layout.
  • 
    <form>
      <fieldset>
        <legend>Large Form Example</legend>
    
        <div class="row">
          <div class="five columns">
    
            <label>Name</label>
            <input type="text">
    
            <label>Occupation</label>
            <input type="text">
    
            <label>Twitter</label>
            <div class="row collapse">
              <div class="two mobile-one columns">
                <span class="prefix">@</span>
              </div>
              <div class="ten mobile-three columns">
                <input type="text" placeholder="foundationzurb">
              </div>
            </div>
    
            <label>URL</label>
            <div class="row collapse">
              <div class="nine mobile-three columns">
                <input type="text" placeholder="foundation.zurb">
              </div>
              <div class="three mobile-one columns">
                <span class="postfix">.com</span>
              </div>
            </div>
    
          </div>
    
          <div class="five columns">
    
            <label class="error">Field with Error</label>
            <input type="text" class="error">
            <small class="error">Invalid entry</small>
    
            <div class="error">
              <label>Another Error</label>
              <input type="text">
              <small>Invalid entry</small>
            </div>
    
          </div>
        </div>
    
        <label>Address</label>
        <input type="text" placeholder="Street (e.g. 123 Awesome St.)">
    
        <div class="row">
          <div class="six columns">
            <input type="text" placeholder="City">
          </div>
          <div class="two columns">
            <select>
              <option>CA</option>
            </select>
          </div>
          <div class="four columns">
            <input type="text" placeholder="ZIP">
          </div>
        </div>
    
      </fieldset>
    </form>
    

Custom Inputs

Creating easy to style custom form elements is so crazy easy, it's practically a crime. Just add a class of "custom" to a form and, if you want, jquery.foundation.forms.js will do everything.
  • Once initialized it will look for any checkbox, radio button, or select element and replace it with custom markup that Foundation provides styles for. It will even correctly respect and apply default states for radio, checkbox and select elements. You can use the "checked" or "selected" properties just like normal.

    If you want to avoid a potential flash (waiting for js to load and replace your default elements) you can supply the custom markup as part of the page, and the js will instead simply map the custom elements to the inputs.

    If you dynamically add inputs to your page you'll need to update the custom markup. You can safely call the previous function again, but to improve performance you can also scope it to only update a single input.

  • 
    <form class="custom">
      <!-- No custom markup applied -->
      <label for="radio1">
        <input name="radio1" type="radio" id="radio1"> Radio Button 1
      </label>
    
      <!-- Above markup will become this -->
      <label for="radio1">
        <input name="radio1" type="radio" id="radio1" style="display:none;">
        <span class="custom radio"></span> Radio Button 1
      </label>
    
      <!-- This markup will NOT be touched by Javascript -->
      <label for="radio2">
        <input name="radio1" type="radio" id="radio2" style="display:none;">
        <span class="custom radio checked"></span> Radio Button 2
      </label>
    </form>
    
    <!-- The HTML for Scoping to Single Input -->
    <select id="changedSelectInput">
      <option>Pick One</option>
    </select>
    
    <!-- The JS for Scoping to Single Input -->
    $("#changedSelectInput").foundationCustomForms();
    

Radio Buttons and Checkboxes

With the patterns described above, we're able to easily construct customizable radio buttons and checkboxes.

  • Select Elements

    Also made with the patterns described above, we've made it simple to create customizable select lists too!

  • 
    <form class="custom">
    
      <!-- Custom Radio -->
      <div class="row">
        <div class="four columns">
          <label for="radio1"><input name="radio1" type="radio" id="radio1" style="display:none;"><span class="custom radio"></span> Radio Button 1</label>
          <label for="radio2"><input name="radio1" type="radio" id="radio2" style="display:none;"><span class="custom radio checked"></span> Radio Button 2</label>
          <label for="radio3"><input name="radio1" type="radio" id="radio3" disabled style="display:none;"><span class="custom radio"></span> Radio Button 3</label>
        </div>
        <div class="four columns">
          <label for="radio4"><input name="radio2" type="radio" id="radio4"> Radio Button 1</label>
          <label for="radio5"><input name="radio2" CHECKED type="radio" id="radio5"> Radio Button 2</label>
          <label for="radio6"><input name="radio2" type="radio" id="radio6"> Radio Button 3</label>
        </div>
    
        <!-- Custom Checkbox -->
        <div class="four columns">
          <label for="checkbox1"><input type="checkbox" id="checkbox1" style="display: none;"><span class="custom checkbox"></span> Label for Checkbox</label>
          <label for="checkbox2"><input type="checkbox" id="checkbox2" checked style="display: none;"><span class="custom checkbox checked"></span> Label for Checkbox</label>
          <label for="checkbox3"><input type="checkbox" CHECKED id="checkbox3"> Label for Checkbox</label>
        </div>
      </div>
    
      <!-- Custom Selects -->
      <label for="customDropdown">Dropdown Label</label>
      <select style="display:none;" id="customDropdown">
        <option SELECTED>This is a dropdown</option>
        <option>This is another option</option>
        <option>Look, a third option</option>
      </select>
      <div class="custom dropdown">
        <a href="#" class="current">
          This is a dropdown
        </a>
        <a href="#" class="selector"></a>
        <ul>
          <li>This is a dropdown</li>
          <li>This is another option</li>
          <li>Look, a third option</li>
        </ul>
      </div>
    </form>
    

Listen to Navi

Navigation helps tell people where they should go on your site or app. We've included lots of handy elements that will let you build quick navigation.
Learn about our navigation »
  • Public Meeting Notice - Agenda Review, Council Finance, Regular Council
    in Public Notices
  • Planning Meeting - May 13, 2014
    The St. Tammany Parish Planning Commission will hold its regular monthly meeting on Tuesday, May 13, 2014 in the St. Tammany Parish Koop Drive - LA Highway 59 Administrative Complex, Parish Council Chambers, 21490 Koop Drive, Mandeville, LA at 6:00 PM to hear comments for and against the following subdivisions…
    in Public Notices
  • Board of Adjustment Meeting - May 6, 2014
    The St. Tammany Parish Board of Adjustment shall hear testimony for and/or against the following variance/appeal cases brought before it for the Tuesday, May 6, 2014 Board of Adjustment meeting at 3:00PM, located at the St. Tammany Parish Government Complex, 21490 Koop Drive, Parish Council Chambers, Mandeville, Louisiana: BOA CASE…
    in Public Notices
  • Zoning Meeting - May 6, 2014
    The St. Tammany Parish Zoning Commission will hold their regular monthly meeting on Tuesday, May 6, 2014 in the St. Tammany Parish Administrative Complex, 21490 Koop Drive, Mandeville, LA at 6:00 PM.  A public hearing will be conducted at this meeting to hear comments for or against amendments to the…
    in Public Notices
  • Board of Adjustment Meeting - April 1, 2014
    The St. Tammany Parish Board of Adjustment shall hear testimony for and/or against the following variance/appeal cases brought before it for the Tuesday, April 1, 2014 Board of Adjustment meeting at 3:00PM, located at the St. Tammany Parish Government Complex, 21490 Koop Drive, Parish Council Chambers, Mandeville, Louisiana: BOA CASE…
    in Public Notices
  • 4th Ward Constable Election Set for November
    At the December meeting of the St. Tammany Parish Council, the Council appointed Katherine Hand as interim Constable for the 4th Ward of St. Tammany Parish. Additionally, they passed a resolution calling for a special election on April 5th, pursuant to the provisions of Louisiana R.S. 13:2583. Since that time…
    in Public Notices
  • Notice to Bidders - Reno Hills Subdivison, Sewer Collection System Improvements
    (02-03-2014) NOTICE TO BIDDERS Bid No.            420-26-14-01-02                 Parish of           ST. TAMMANY            (herein referred to as the "Owner") Sealed bids will be received by the Owner for the construction of the SEWER COLLECTION SYSTEM IMPROVEMENTS FOR RENO HILLS SUBDIVISION    project described as follows: The work…
    in Public Notices
  • Availability of Low Income Energy Assistance Program (LIHEAP)
    The LOW INCOME ENERGY ASSISTANCE PROGRAM (LIHEAP) funds are dedicated to assist eligible low income households with their energy payments through the Department of Health and Human Services, Community Action Agency.  All applications are taken on a first come, first served basis.  Appointments will be scheduled beginning January 27, 2014. …
    in Public Notices