New Feature: Playlist Center! Pick a topic and let our playlists guide the way.

Easy-to-follow video tutorials help you learn software, creative, and business skills.Become a member

Using editable attributes

From: Dreamweaver CS5 Essential Training

Video: Using editable attributes

There are going to be times that as you plan your templates, you may have elements on the page that although they have certain attributes which change from page-to-page, the entire element itself stays the same. This could be the source of an image or the destination of a link, you know things like that. But in these cases instead of making the whole element an editable region, you can simply make the attribute itself editable. Take our template. We need to be able to control our navigation and breadcrumbs through the template itself. To indicate the current page in our navigation, we will assign the class Current to the link.

Using editable attributes

There are going to be times that as you plan your templates, you may have elements on the page that although they have certain attributes which change from page-to-page, the entire element itself stays the same. This could be the source of an image or the destination of a link, you know things like that. But in these cases instead of making the whole element an editable region, you can simply make the attribute itself editable. Take our template. We need to be able to control our navigation and breadcrumbs through the template itself. To indicate the current page in our navigation, we will assign the class Current to the link.

To adjust the page layout in the event of a page needing breadcrumbs, we assign the class hasCrumbs to the body tag. By simply making those attributes editable, we can change the entire complexion of the page through simply assigning those classes. We're not limited to class attributes either. Link sources, image alt tags, image sources, element IDs, really any attribute can be identified as an editable attribute within your templates. So I have had the main_template.dwt that we were working on in the last exercise open and I have found this in the 13_03 Templates folder.

So I am going to start by assigning some editable attributes and probably the first place to start would be the body tag. Now you'll notice if I look down at my Tag Selector, the body tag has a class called hasCrumbs. Now I am going to switch over to Code View and show you that a little bit more clearly. So our body tag has a class called hasCrumbs. Now what does that do for us? Well, in the event that our page has breadcrumbs, we don't need as much spacing between the breadcrumb and the page heading. When a page has no breadcrumbs, we need to make sure that that space remains empty so that our page headings and the content doesn't move up the page whenever breadcrumbs are not found.

So essentially hasCrumbs simply modifies the space between the heading and the element above it. That way we ensure consistent spacing whether a page has breadcrumbs or not. So it's really important when we create new pages off this template that we're able to differentiate between pages that have crumbs and pages that don't. By making this hasCrumbs class editable, when we create a new page, we can simply tell Dreamweaver make the class either this or this and the layout will adjust. So to make an editable attribute, you simply select the element that contains the attribute in question.

In this case, I am going to go down to my Tag Selector and again click on that body tag. So you just click on that once and make sure you have that selected. Next, I am going to go up to my menu. Now when we created the editable regions, they were found in the Insert menu, but editable attributes are actually found onto the Modify menu. I don't know why. Just go up to your menu, select Modify, go down to Templates and you want to choose Make Attribute Editable. Perhaps that's it. We are modifying this particular tag.

So as soon as you do that, you will notice that it's saying "Choose which attribute of the body tag should be editable." That's a nice indicator of what element you have selected and if you see something there that you didn't expect, if it's set for the div tag or a link tag , then we selected the wrong one and you should hit Cancel and try it again. So let's make sure that it says the body tag and the attribute that we're going to make editable is class. Although if you notice, if you grab the pull-down menu, if we had other attributes on the body tag such as an IDE or any of the other attributes that the body tag could have, they would all be listed here.

Only the ones that you have set are going to be listed. So I am going to make sure it says Class then I am going to choose Make attribute editable. So I can give this a label and you might be tempted to just go ahead and leave it as Class but later on when we're creating pages off of this, we're going to go up and modify our template properties and we are going to get a full listing of these and if we have 15 classes listed, we won't know what they are. So we're just going to call this one bodyClass, all one word. That way we know exactly which one we're modifying. Now one of the coolest things about editable attributes is the Type pulldown menu.

Notice that we can choose between Text, URLs, Color, True/False or Boolean value and Number. The thing that I love about this is that let's say you're taking an image and you are making the source of that image editable. If you choose URL, when you go into modify the image properties, Dreamweaver will give you a little browse icon and you can browse for an image. If you say Color, it's going to give you your Swatch panel as you assign a value to it. So that's really, really cool. By saying Text, you are just saying let me type in a textual value and for classes, that's all we really need. Now I am just going to leave the default as hasCrumbs, but I could really put anything I wanted here.

So if the overwhelming majority of my site was not going to have crumbs, I could probably just change this to say noCrumbs and then when prompted, when creating the page, I could simply type in and change it to hasCrumbs. But as it is I will just leave the default as hasCrumbs. So I am going to go ahead and click OK and there is our first editable attribute. Now if you look down at the body tag right now, you are going to see some pretty confusing code. Well, that's what we call a template expression and essentially in the code, what Dreamweaver's done is it's created a parameter. Let me show you what I mean. I am going to switch over to Code View and I can see right here on line 10 up in the ahead of my document, I now have a comment tag.

That is essentially Dreamweaver establishing a template parameter. Its name is bodyClass, its type is text, and its value is hasCrumbs. If you wanted to and you understood the syntax of that, you can just create these all on your own. In the bodyClass itself, we have what is known as the template expression. This template expression evaluates and notice that it's looking for the value of bodyClass so it's going to go up here and find that value and plug it into that particular spot. So those can be hand coded if you want, although I think they are a lot easier to do through the interface. Okay let's go ahead and save our template and now we need to move onto the big section which is our links.

Earlier when we created our template, we clicked inside each one of these links and we added this baseLink class. When we create a page, we are going to have the option of replacing baseLink with current. Current would indicate that this is the current page and our CSS would modify our link so that it is displayed properly. As is, baseLink has really no styling attached to it all so leaving it there means nothing is going to change. But it's an important step. Even though that baseLink is sort of a dummy class, it doesn't really do anything for us, it allows us to have a value that we can replace. So you always want that because if you don't already have something in there, so you would at least have to have a default value in there to replace.

Okay, so now we have to go through each one of these and create an editable attribute. Again, this is a little bit of work on the front-end, but this is really going to payoff when we start creating our pages based on these. So I am going to click inside Tours, and then using the Tag Selector, I am going to click on the link baseLink. Once again I am going to go to Modify > Templates > Make Attribute Editable. So here you can see we have more choices. Our link also includes an href attribute and a Title attribute. Well, we want to make the Class attribute editable so I am going to go ahead and select that.

Again, I am going to click the checkbox Make Attribute Editable, and remember we have to come up with the unique name for that, that we will recognize later on when we are creating pages based off of this. I am just going to call this one toursLink. Its Type is going to be Text, and I am going to leave the Default alone. I am not going to touch that or modify that in anyway. Let me go ahead and click OK. Now it's going to appear that that deleted the link. It didn't. What it did is it replaced the current class contents with a template expression. Our CSS was using that to determine which graphic to display, so in essence it's not showing a graphic.

That's okay because when we create a new page based off the template, that template expression will be replaced by the actual classes so we will be fine. All right, now all that's left for us to do is to go through each link and in turn create editable attributes. So click inside All Tours and once again go down to the Tag Selector and click on the a tag for that particular link and we're going to go up to Modify > Templates > Make Attribute Editable. Once again, we are going into the class, we are going to make that editable, and we are just going to come up with a consistent naming convention here.

I am going to type in toursSub, to indicate it's part of the subNav, All because those are All Tours. So toursSubAll, one word, I am going to leave it Text and I leave the default alone. As a matter of fact, we won't change that for any of the links that we're going to be working with. Now Dreamweaver has a habit of jumping back up to the very top of the page when it finishes with this. It almost makes it easier to go all the way down to the bottom of your navigation and start from the bottom and work your way down but just keep in mind which one you did last. So I will do Tours by Activity next.

Again, I am going to click my Tag Selector and choose the link. Modify > Templates > Make Attribute Editable. We will make the Class attribute editable, and this one is going to be toursSubActivity. Next will be regions. So go ahead and select that one the same way that we have selected all the other ones. I am going to go to Modify > Template > Make Attribute Editable. We are going to do Class and this one is going to be toursSubRegion. Select the Tour Finder one. Modify > Template > Make Attribute Editable, Class, make it editable, and this one is going to be toursSubFinder.

Click on Mission and again I am going to select the a tag, Modify > Templates > Make Attribute Editable, Class and we are just going to call this one missionLink. Again, I am going to leave the defaults alone and click OK. And again, if we did it right, it will disappear. Select the Contact link. Modify > Template > Make Attribute Editable. You can see if you are going to do a whole lot of this in your workflow, you may want to go ahead and map out a keyboard shortcut to this. That could certainly help.

This one will be labeled contactLink, and again verify each time out that you are making the Class Attribute editable, not href or the Title attribute. Click OK and just keep going. So next we will do Resources, Templates > Make Attribute Editable, Class and we are going to call this one resourceLink. And we just have to go through them one at a time. Unfortunately, there is no shortcuts for this.

And you probably won't have this many attributes each time out. So for this one, we are going to call this one resourceSubFAQ. We can leave the default alone. And we are just going to keep going. So with each link, just go and select it and make sure you are modifying the Class. This one will be resourceSubTerms. Modify > Templates > Make Attribute Editable.

Class, resourceSubAdd, I will just say Add for additional. As long as you know what that name is going to reference later on, then you can name it anything you want. My advice however is sometimes when you are doing something like this, you will say to yourself, oh I will remember what that is, but you really want to be descriptive because a month from now really? Maybe, maybe not. So this one, we'll do resourceSubPrivacy and we are indeed getting there.

We're making progress. Modify > Templates > Make Attribute Editable, again Class, and we are going to make this one exploreLink. And then all that is left to do is the sub-navigation here. So Templates > Make Attribute Editable. We are going to do exploreSubJoin. Notice again we are not modifying those defaults at all.

This is why we went in and placed the baseLink in there to begin with so that we didn't have to do it at this stage. Make Attribute Editable. Class, that one is going to be exploreSubBlog, and then two more. Thanks for hanging in there with me. And this one is exploreSubPhotos and then finally do our last one.

That's going to be exploreSubVideo. Okay, save your file and now we have our editable regions. Now, I know that it took a while to do but it really showcases that when you make templates, sometimes there's going to be a little bit of drudgery involved. The good news is though this work is designed to save as a ton of work on the backend. So by going ahead and putting it into extra work as you are building your templates, you are going to make your life easier as you develop your site and certainly as you maintain your site later on.

So we have two editable regions for the main content of the page, our navigation is customizable, based on which section of the site we're working on, and our body tag has a class attribute that could be changed to modify the layout for whether we have crumbs on our page or no breadcrumbs. We still have one thing to tackle before we start building pages off of this template. Our sub-navigation and breadcrumbs won't be needed on all of our pages. As such we are going to make them optional regions so that we only add them to the pages as needed and we're going to tackle that in our next movie.

Show transcript

This video is part of

Image for Dreamweaver CS5 Essential Training
Dreamweaver CS5 Essential Training

135 video lessons · 88721 viewers

James Williamson

Expand all | Collapse all
  1. 2m 57s
    1. Welcome
      1m 8s
    2. Using the exercise files
      1m 49s
  2. 7m 50s
    1. What is Dreamweaver?
      3m 16s
    2. Learning web design
      2m 22s
    3. Current web standards
      2m 12s
  3. 43m 9s
    1. The Welcome screen
      4m 5s
    2. Windows and Mac interface differences
      2m 23s
    3. The Application toolbar
      4m 7s
    4. The Document toolbar
      4m 40s
    5. Arranging panels
      8m 19s
    6. Managing workspaces
      7m 32s
    7. The Properties Inspector
      5m 54s
    8. The Insert panel
      6m 9s
  4. 25m 45s
    1. Basic site structure
      3m 11s
    2. File naming conventions
      1m 49s
    3. Defining a new site
      4m 35s
    4. Managing sites
      4m 51s
    5. Managing files and folders
      6m 36s
    6. Working with browsers
      4m 43s
  5. 27m 21s
    1. Creating new documents
      5m 16s
    2. New document preferences
      3m 6s
    3. Setting accessibility preferences
      4m 56s
    4. Working with starter pages
      3m 46s
    5. Managing starter pages
      10m 17s
  6. 30m 2s
    1. Basic tag structure
      2m 15s
    2. Adding structure to text
      8m 20s
    3. Creating lists
      9m 59s
    4. Getting text into Dreamweaver
      5m 59s
    5. Importing Word documents
      3m 29s
  7. 1h 17m
    1. Understanding style sheets
      2m 16s
    2. The anatomy of a CSS rule
      1m 48s
    3. Setting CSS preferences
      6m 36s
    4. The CSS Styles panel
      10m 2s
    5. Controlling CSS through the Properties Inspector
      5m 14s
    6. Using the Code Navigator
      7m 21s
    7. Using CSS Enable
      6m 45s
    8. Understanding element selectors
      8m 11s
    9. Understanding class selectors
      8m 49s
    10. Understanding ID selectors
      5m 59s
    11. Understanding descendant selectors
      6m 51s
    12. Attaching external style sheets
      7m 44s
  8. 1h 47m
    1. Working with units of measurement
      7m 11s
    2. Declaring font families
      9m 39s
    3. Controlling font sizing
      9m 9s
    4. Controlling weight and style
      8m 0s
    5. Controlling line height
      8m 29s
    6. Controlling vertical spacing with margins
      12m 3s
    7. Controlling spacing with padding
      5m 39s
    8. Aligning text
      8m 26s
    9. Transforming text
      5m 36s
    10. Writing global styles
      15m 42s
    11. Writing targeted styles
      17m 37s
  9. 1h 32m
    1. Understanding image types
      5m 3s
    2. Managing assets in Dreamweaver
      12m 51s
    3. Setting image accessibility preferences
      4m 20s
    4. Setting external image editing preferences
      3m 52s
    5. Placing images on the page
      7m 37s
    6. Photoshop integration
      5m 54s
    7. Modifying Smart Objects
      5m 51s
    8. Alternate Photoshop workflows
      8m 8s
    9. Modifying image properties
      11m 14s
    10. Styling images with CSS
      7m 11s
    11. Using background graphics
      9m 3s
    12. Positioning background graphics
      11m 6s
  10. 55m 16s
    1. Link basics
      3m 37s
    2. Setting site linking preferences
      2m 14s
    3. Creating links in Dreamweaver
      11m 1s
    4. Absolute links
      5m 8s
    5. Using named anchors
      11m 19s
    6. Linking to named anchors in external files
      2m 44s
    7. Creating an email link
      5m 24s
    8. Creating CSS-based rollovers
      13m 49s
  11. 1h 34m
    1. CSS structuring basics
      2m 56s
    2. The Box Model
      13m 21s
    3. Understanding floats
      6m 53s
    4. Clearing and containing floats
      8m 56s
    5. Using relative positioning
      4m 8s
    6. Using absolute positioning
      7m 18s
    7. Creating structure with div tags
      12m 7s
    8. Styling basic structure
      10m 34s
    9. Creating a two-column layout
      10m 37s
    10. Using Live View and CSS Inspect
      7m 51s
    11. Using Browser Lab
      9m 39s
  12. 56m 22s
    1. Reviewing table structure
      7m 41s
    2. Importing tabular data
      5m 13s
    3. Creating accessible tables
      9m 56s
    4. Using thead and tbody tags
      4m 0s
    5. Basic table styling
      8m 45s
    6. Styling table headers
      7m 52s
    7. Styling column groups
      4m 22s
    8. Creating custom table borders
      5m 1s
    9. Styling table captions
      3m 32s
  13. 1h 43m
    1. How forms work
      3m 0s
    2. Reviewing form design
      3m 2s
    3. Creating accessible forms
      7m 33s
    4. Setting form properties
      4m 6s
    5. The fieldset and legend tags
      4m 32s
    6. Inserting text fields
      5m 58s
    7. Inserting list menu items
      5m 26s
    8. Inserting checkboxes
      7m 50s
    9. Inserting radio button groups
      6m 22s
    10. Inserting text areas
      4m 12s
    11. Inserting submit buttons
      3m 37s
    12. Basic form styling
      12m 0s
    13. Form element styling
      8m 52s
    14. Styling form layout
      11m 49s
    15. Adding form interactivity
      2m 47s
    16. Using Spry validation widgets
      12m 49s
  14. 1h 23m
    1. Planning for templates
      10m 51s
    2. Creating a new template
      10m 37s
    3. Using editable attributes
      13m 43s
    4. Creating optional regions
      6m 23s
    5. Creating new pages from a template
      9m 17s
    6. Applying templates to existing pages
      6m 9s
    7. Working with nested templates
      7m 56s
    8. Working with repeating regions
      12m 58s
    9. Modifying templates
      5m 41s
  15. 40m 14s
    1. Behaviors overview
      3m 47s
    2. Hiding and showing elements
      9m 18s
    3. Spry overview
      4m 4s
    4. Using Spry widgets
      11m 36s
    5. Adding Spry effects
      3m 6s
    6. Using the Widget Browser
      8m 23s
  16. 28m 18s
    1. Inserting Flash files
      5m 4s
    2. Setting properties for Flash
      6m 27s
    3. Dreamweaver and Flash integration
      6m 6s
    4. Encoding Flash video
      6m 10s
    5. Adding Flash video
      4m 31s
  17. 45m 28s
    1. Running site-wide reports
      6m 33s
    2. Checking for broken links
      5m 41s
    3. Checking for browser compatibility
      8m 3s
    4. Adding remote servers
      8m 0s
    5. Uploading files
      7m 20s
    6. Managing remote sites
      9m 51s
  18. 34s
    1. Goodbye

Start learning today

Get unlimited access to all courses for just $25/month.

Become a member
Sometimes @lynda teaches me how to use a program and sometimes changes my life forever. @JosefShutter
@lynda is an absolute life saver when it comes to learning todays software. Definitely recommend it! #higherlearning @Michael_Caraway
@lynda The best thing online! Your database of courses is great! To the mark and very helpful. Thanks! @ru22more
Got to create something yesterday I never thought I could do. #thanks @lynda @Ngventurella
I really do love @lynda as a learning platform. Never stop learning and developing, it’s probably our greatest gift as a species! @soundslikedavid
@lynda just subscribed to all I can say its brilliant join now trust me @ButchSamurai
@lynda is an awesome resource. The membership is priceless if you take advantage of it. @diabetic_techie
One of the best decision I made this year. Buy a 1yr subscription to @lynda @cybercaptive
guys (@lynda) is the best. So far I’ve learned Java, principles of OO programming, and now learning about MS project @lucasmitchell
Signed back up to @lynda dot com. I’ve missed it!! Proper geeking out right now! #timetolearn #geek @JayGodbold

Are you sure you want to delete this note?


Thanks for signing up.

We’ll send you a confirmation email shortly.

Sign up and receive emails about and our online training library:

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from

Sign up and receive emails about and our online training library:

Here’s our privacy policy with more details about how we handle your information.

submit Lightbox submit clicked
Terms and conditions of use

We've updated our terms and conditions (now called terms of service).Go
Review and accept our updated terms of service.