<?xml version="1.0"?>
<News hasArchived="true" page="7722" pageCount="10777" pageSize="10" timestamp="Sun, 30 Aug 2026 08:21:39 -0400" url="https://my3.my.umbc.edu/posts.xml?mode=activity&amp;page=7722">
<NewsItem contentIssues="false" id="122761" important="false" status="posted" url="https://my3.my.umbc.edu/posts/122761">
<Title>Tom Beck, Library Gallery, Interviewed for WYPR&#8217;s Maryland Morning</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <p><img alt="jaffee05-360" src="/wp-content/uploads/2014/03/jaffee05-360.jpg?w=150" width="150" height="116" style="max-width: 100%; height: auto;"><a href="http://wypr.org/post/photographer-n-jay-jaffee-captured-spontaneous" rel="nofollow external" class="bo">An interview</a> with Tom Beck, Chief Curator of the Albin O. Kuhn Library Gallery, aired on WYPR’s <em>Maryland Morning</em> this week, in which he discusses the works currently on display in the Library Gallery exhibition, <em>N. Jay Jaffee Photographs from Public to Personal, 1947-1997</em>. Beck talks about the artist’s personal life and work in relation to the photography of his peers, as well as the historical importance of Jaffee’s photographs.</p>
    <p>Listen to the interview, <a href="http://wypr.org/post/photographer-n-jay-jaffee-captured-spontaneous" rel="nofollow external" class="bo">“Photographer N. Jay Jaffee Captured the Spontaneous”</a> at WYPR.org.</p>
    <p>More information about the exhibition is available at our <a href="http://artscalendar.umbc.edu/2011/12/15/n-jay-jaffee-photographs-from-public-to-personal-1947-1997/" rel="nofollow external" class="bo">Arts and Culture Calendar</a>. <em>N. Jay Jaffee Photographs from Public to Personal</em> is on display now through Sunday, March 23 in the AOK Library Gallery.</p>
    </div>
]]>
</Body>
<Summary>An interview with Tom Beck, Chief Curator of the Albin O. Kuhn Library Gallery, aired on WYPR’s Maryland Morning this week, in which he discusses the works currently on display in the Library...</Summary>
<Website>https://umbc.edu/stories/tom-beck-library-gallery-interviewed-for-wyprs-maryland-morning/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/122761/guest@my.umbc.edu/f24e154edd81d25eac6f26d747c44f46/api/pixel</TrackingUrl>
<Tag>arts-and-culture</Tag>
<Tag>engage</Tag>
<Tag>library</Tag>
<Tag>visualarts</Tag>
<Group token="umbc-news-magazine">UMBC News &amp;amp; Magazine</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/umbc-news-magazine</GroupUrl>
<AvatarUrl>https://assets1-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/xsmall.png?1748556657</AvatarUrl>
<AvatarUrl size="original">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/original.png?1748556657</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/xxlarge.png?1748556657</AvatarUrl>
<AvatarUrl size="xlarge">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/xlarge.png?1748556657</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/large.png?1748556657</AvatarUrl>
<AvatarUrl size="medium">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/medium.png?1748556657</AvatarUrl>
<AvatarUrl size="small">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/small.png?1748556657</AvatarUrl>
<AvatarUrl size="xsmall">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/xsmall.png?1748556657</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/xxsmall.png?1748556657</AvatarUrl>
<Sponsor>UMBC News &amp; Magazine</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>false</CommentsAllowed>
<PostedAt>Tue, 11 Mar 2014 15:46:25 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="false" id="122762" important="false" status="posted" url="https://my3.my.umbc.edu/posts/122762">
<Title>Marie desJardins, Computer Science and Electrical Engineering, on Voice of America</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <p><a href="/wp-content/uploads/2014/03/rapmdesjardin.jpg" rel="nofollow external" class="bo"><img alt="RAPmdesjardin" src="/wp-content/uploads/2014/03/rapmdesjardin.jpg?w=225" width="175" height="230" style="max-width: 100%; height: auto;"></a><em><a href="http://www.voanews.com/content/education-key-theme-for-international-womens-day/1866669.html" rel="nofollow external" class="bo">Voice of America’s </a></em>International Women’s Day coverage highlights the efforts of leading women in science, technology, engineering and math (STEM) to encourage girls to pursue those fields.</p>
    <p>In a video posted on the news site, Marie desJardins, professor of computer science and electrical engineering, says, “Make sure your kids are getting [exposure to STEM] from an early age so they think of themselves as creators of technology and new ideas, not just following the rules.”</p>
    <p>See the video and article <em>on Voice of America</em> by clicking <a href="http://www.voanews.com/content/education-key-theme-for-international-womens-day/1866669.html" rel="nofollow external" class="bo">here</a>.</p>
    </div>
]]>
</Body>
<Summary>Voice of America’s International Women’s Day coverage highlights the efforts of leading women in science, technology, engineering and math (STEM) to encourage girls to pursue those fields.   In a...</Summary>
<Website>https://umbc.edu/stories/marie-desjardins-computer-science-and-electrical-engineering-on-voice-of-america/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/122762/guest@my.umbc.edu/69ec7d9b3bb8a479a3ea32170f934e00/api/pixel</TrackingUrl>
<Tag>csee</Tag>
<Tag>science-and-technology</Tag>
<Group token="umbc-news-magazine">UMBC News &amp;amp; Magazine</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/umbc-news-magazine</GroupUrl>
<AvatarUrl>https://assets1-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/xsmall.png?1748556657</AvatarUrl>
<AvatarUrl size="original">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/original.png?1748556657</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/xxlarge.png?1748556657</AvatarUrl>
<AvatarUrl size="xlarge">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/xlarge.png?1748556657</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/large.png?1748556657</AvatarUrl>
<AvatarUrl size="medium">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/medium.png?1748556657</AvatarUrl>
<AvatarUrl size="small">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/small.png?1748556657</AvatarUrl>
<AvatarUrl size="xsmall">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/xsmall.png?1748556657</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/001/943/24435aa6207c452e7bc15cc74b42c7bb/xxsmall.png?1748556657</AvatarUrl>
<Sponsor>UMBC News &amp; Magazine</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>false</CommentsAllowed>
<PostedAt>Tue, 11 Mar 2014 15:43:55 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="false" id="42314" important="false" status="posted" url="https://my3.my.umbc.edu/posts/42314">
<Title>Bioarchaeology and Forensic Anthropology Field School</Title>
<Tagline>University of Massachusetts Amherst</Tagline>
<Body>
<![CDATA[
    <div class="html-content">
    <span>We would like to highlight our bioarchaeology and forensic anthropology field school at the University of Massachusetts Amherst. This course introduces students to the role of the biological anthropologist, archaeologist and forensic scientist in excavations of human remains.</span><br><br><span>The course will be divided into three units. The first unit will introduce students to field and laboratory techniques, including familiarity with the human skeletal system, recognizing what constitutes bioarchaeological or forensic data, and violence theory. The second unit will consist of excavations of a pseudo-crime scene and pseudo-archaeological burial. The third unit will focus on laboratory techniques used to analyze the data generated from these two excavation sites, and the design and building of the following year?s burial sites.  Throughout the course we will explore key concepts in ethics, repatriation, medicolegal death investigation and regulations regarding unmarked burials.</span><br><span><br></span><div>
    <span>Our field school is aimed at giving students a better understanding of work in these fields, ethical issues and guidelines, and what constitutes violence and how to recognize evidence of violence on human remains and material objects.  The Low Stakes, High Impact learning model we have developed for this field school provides students with the opportunity to develop the professional and academic skills to immediately pursue career and graduate opportunities in a number of different professional settings.</span><br><span><br></span><div>
    <span>Each participating student will be awarded 6 semester credit units through the University of Massachusetts Amherst Continuing Education Division.</span><br><br><span>For more information please visit: </span><a href="http://www.umass.edu/anthro" rel="nofollow external" class="bo">www.umass.edu/anthro</a><span> .</span><br><span>Or find us on Facebook at: </span><a href="http://www.facebook.com/umassbioarchforensics" rel="nofollow external" class="bo">www.facebook.com/umassbioarchforensics</a><span> .</span><br><br>
    </div>
    </div>
    </div>
]]>
</Body>
<Summary>We would like to highlight our bioarchaeology and forensic anthropology field school at the University of Massachusetts Amherst. This course introduces students to the role of the biological...</Summary>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/42314/guest@my.umbc.edu/cf3001e31ed6030b9ae788089bbb8ed6/api/pixel</TrackingUrl>
<Group token="retired-279">Anthropology Council of Majors</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-279</GroupUrl>
<AvatarUrl>https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/279/56786bbe51b83ae53c89e68efb23425a/xsmall.png?1315754011</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/279/56786bbe51b83ae53c89e68efb23425a/original.png?1315754011</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/279/56786bbe51b83ae53c89e68efb23425a/xxlarge.png?1315754011</AvatarUrl>
<AvatarUrl size="xlarge">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/279/56786bbe51b83ae53c89e68efb23425a/xlarge.png?1315754011</AvatarUrl>
<AvatarUrl size="large">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/279/56786bbe51b83ae53c89e68efb23425a/large.png?1315754011</AvatarUrl>
<AvatarUrl size="medium">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/279/56786bbe51b83ae53c89e68efb23425a/medium.png?1315754011</AvatarUrl>
<AvatarUrl size="small">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/279/56786bbe51b83ae53c89e68efb23425a/small.png?1315754011</AvatarUrl>
<AvatarUrl size="xsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/279/56786bbe51b83ae53c89e68efb23425a/xsmall.png?1315754011</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/279/56786bbe51b83ae53c89e68efb23425a/xxsmall.png?1315754011</AvatarUrl>
<Sponsor>Anthropology Council of Majors</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Tue, 11 Mar 2014 15:33:22 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="42316" important="false" status="posted" url="https://my3.my.umbc.edu/posts/42316">
<Title>How to Use the Details and Summary Elements in HTML5</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <p>A number of new <em>interactive</em> elements were introduced with HTML5 that provide native implementations of common UI widgets like <a href="http://blog.teamtreehouse.com/a-preview-of-the-new-dialog-element" rel="nofollow external" class="bo">dialogs and modals</a>. Among these new additions are the <code>&lt;details&gt;</code> and <code>&lt;summary&gt;</code> elements. These elements allow developers to create collapsable UI widgets the user can click to show or hide content.</p>
    <p>In this post, we’ll take a deep dive into the <code>&lt;details&gt;</code> and <code>&lt;summary&gt;</code> elements. You’re going to learn how to use these elements in your HTML markup, how to apply custom styling to them, and what browsers they work in.</p>
    <p>Let’s get started.</p>
    <h2>Using the Details and Summary Elements</h2>
    <p>The <code>&lt;details&gt;</code> and <code>&lt;summary&gt;</code> elements are used in combination to create a UI widget that allows the user to find out more information about a topic by clicking on a summary.</p>
    <div>
    <a href="http://blog.teamtreehouse.com/wp-content/uploads/2014/03/simple-details.gif" rel="nofollow external" class="bo"><img alt="A simple details and summary element example." src="http://blog.teamtreehouse.com/wp-content/uploads/2014/03/simple-details.gif" width="479" height="85" style="max-width: 100%; height: auto;"></a><p>A simple details and summary element example.</p>
    </div>
    <p>The <code>&lt;details&gt;</code> element is responsible for marking up all of the content relevant to the particular topic. The <code>&lt;summary&gt;</code> element is used to specify a short piece of text that describes the rest of the content in the <code>&lt;details&gt;</code> element.</p>
    <pre><code>&lt;details&gt;&#x000A;        &lt;summary&gt;Summary text&lt;/summary&gt;&#x000A;        Content goes here...&#x000A;    &lt;/details&gt;</code></pre>
    <p>By default, the browser will only display the content within the <code>&lt;summary&gt;</code> element to the user. Once this summary is clicked, the remaining content will become visible.</p>
    <p>The browser will use the text from the first <code>&lt;summary&gt;</code> element within the <code>&lt;details&gt;</code> element when constructing the widget. If no <code>&lt;summary&gt;</code> element is specified, the browser will simply display “Details.”</p>
    <p>If you’d like the widget to be open when the page loads, you can specify the <code>open</code> attribute on your <code>&lt;details&gt;</code> element.</p>
    <pre><code>&lt;details open&gt;...&lt;/details&gt;</code></pre>
    <p>The browser will toggle the <code>open</code> attribute for you as the user opens and closes the widget.</p>
    <p>So what kind of content should you be using the <code>&lt;details&gt;</code> and <code>&lt;summary&gt;</code> elements for? Simply, any additional information you’d like to provide about a subject. For example, you could use these elements for marking up order data within an e-commerce app. In the following example, the user is presented with an order number that, when clicked, will reveal the full information about the order.</p>
    <div>
    <a href="http://blog.teamtreehouse.com/wp-content/uploads/2014/03/details-summary-demo.gif" rel="nofollow external" class="bo"><img alt="Using details and summary elements to mark up order data." src="http://blog.teamtreehouse.com/wp-content/uploads/2014/03/details-summary-demo.gif" width="670" height="436" style="max-width: 100%; height: auto;"></a><p>Using details and summary elements to mark up order data.</p>
    </div>
    <p><a href="http://codepen.io/matt-west/pen/xtHdc" rel="nofollow external" class="bo">View The CodePen Demo</a></p>
    <pre><code>&lt;details&gt;&#x000A;        &lt;summary&gt;Order #24892105&lt;/summary&gt;&#x000A;        &lt;table&gt;&#x000A;            &lt;tr&gt;&#x000A;                &lt;th scope="row"&gt;Order Date&lt;/th&gt;&#x000A;                &lt;td&gt;30th May 2003&lt;/td&gt;&#x000A;            &lt;/tr&gt;&#x000A;            &lt;tr&gt;&#x000A;                &lt;th scope="row"&gt;Order Number&lt;/th&gt;&#x000A;                &lt;td&gt;#24892105&lt;/td&gt;&#x000A;            &lt;/tr&gt;&#x000A;            &lt;tr&gt;&#x000A;                &lt;th scope="row"&gt;Courier&lt;/th&gt;&#x000A;                &lt;td&gt;Buy N Large Postal&lt;/td&gt;&#x000A;            &lt;/tr&gt;&#x000A;            &lt;tr&gt;&#x000A;                &lt;th scope="row"&gt;Shipping Address&lt;/th&gt;&#x000A;                &lt;td&gt;&#x000A;                    P. Sherman,&lt;br&gt;&#x000A;                    42 Wallaby Way,&lt;br&gt;&#x000A;                    Sydney,&lt;br&gt;&#x000A;                    Australia&#x000A;                &lt;/td&gt;&#x000A;            &lt;/tr&gt;&#x000A;            &lt;tr&gt;&#x000A;                &lt;th scope="row"&gt;Billing Address&lt;/th&gt;&#x000A;                &lt;td&gt;&#x000A;                    P. Sherman,&lt;br&gt;&#x000A;                    42 Wallaby Way,&lt;br&gt;&#x000A;                    Sydney,&lt;br&gt;&#x000A;                    Australia&#x000A;                &lt;/td&gt;&#x000A;            &lt;/tr&gt;&#x000A;        &lt;/table&gt;&#x000A;    &lt;/details&gt;</code></pre>
    <p>You could also create a UI widget that presents additional controls when a user clicks on a key object in your application.</p>
    <div>
    <a href="http://blog.teamtreehouse.com/wp-content/uploads/2014/03/details-summary-controls.png" rel="nofollow external" class="bo"><img alt="Using details and summary elements to mark up additional controls." src="http://blog.teamtreehouse.com/wp-content/uploads/2014/03/details-summary-controls.png" width="640" height="190" style="max-width: 100%; height: auto;"></a><p>Using details and summary elements to mark up additional controls.</p>
    </div>
    <p><a href="http://codepen.io/matt-west/pen/xtHdc" rel="nofollow external" class="bo">View The CodePen Demo</a></p>
    <pre><code>&lt;details&gt;&#x000A;        &lt;summary&gt;README.txt&lt;/summary&gt;&#x000A;        &lt;ul&gt;&#x000A;            &lt;li&gt;&lt;a href="#"&gt;Open&lt;/a&gt;&lt;/li&gt;&#x000A;            &lt;li&gt;&lt;a href="#"&gt;Edit&lt;/a&gt;&lt;/li&gt;&#x000A;            &lt;li&gt;&lt;a href="#"&gt;Duplicate&lt;/a&gt;&lt;/li&gt;&#x000A;            &lt;li&gt;&lt;a href="#"&gt;Delete&lt;/a&gt;&lt;/li&gt;&#x000A;        &lt;/ul&gt;&#x000A;    &lt;/details&gt;</code></pre>
    <p>Other applications could include things like questions and answers within FAQ pages, tables of contents, and collapsable fieldsets for multi-part forms.</p>
    <h2>Styling Details and Summary Elements with CSS</h2>
    <p>Now that you have an understanding of how to use the <code>&lt;details&gt;</code> and <code>&lt;summary&gt;</code> elements in your HTML, let’s take a look at how you can style these elements using CSS.</p>
    <p>Targeting the <code>details</code> element in your CSS allows you to style all of the content within the element.</p>
    <pre><code>details {&#x000A;        /* Your styling rules. */    &#x000A;    }</code></pre>
    <p>If you want to style just the area that opens and closes the widget, you should target the <code>summary</code> element.</p>
    <pre><code>summary {&#x000A;        /* Your styling rules. */    &#x000A;    }</code></pre>
    <p>Targeting these elements directly like this will add styling rules that apply in both the open and closed states of the widget. If you want to style the widget differently when it’s open or closed, you can use a CSS selector that only applies to <code>&lt;details&gt;</code> elements with the <code>open</code> attribute.</p>
    <pre><code>/* Open details element. */&#x000A;    details[open] {&#x000A;    &#x000A;    }&#x000A;    &#x000A;    /* Summary within an open details element. */&#x000A;    details[open] summary {&#x000A;    &#x000A;    }</code></pre>
    <p>By default, the browser will display a small marker triangle to the left of the summary text that indicates the current state of the <code>&lt;details&gt;</code> element. You can target this marker in CSS using the <code>-webkit-details-marker</code> pseudo-class.</p>
    <pre><code>/* Change the color and size of the marker. */&#x000A;    summary::-webkit-details-marker {&#x000A;        color: #69c773;&#x000A;        font-size: 200%;&#x000A;    }</code></pre>
    <p>You can even hide the marker completely by setting its <code>display</code> property to <code>none</code>.</p>
    <pre><code>/* Hide the marker completely. */&#x000A;    summary::-webkit-details-marker {&#x000A;        display: none;&#x000A;    }</code></pre>
    <p>If you want to use your own marker icon, start by hiding the default marker (as shown above), and then use the <code>:before</code> pseudo-element to add your custom icon. This should be applied to the <code>summary</code> element.</p>
    <div>
    <a href="http://blog.teamtreehouse.com/wp-content/uploads/2014/03/details-summary-custom-marker.gif" rel="nofollow external" class="bo"><img alt="Using custom marker icons." src="http://blog.teamtreehouse.com/wp-content/uploads/2014/03/details-summary-custom-marker.gif" width="677" height="164" style="max-width: 100%; height: auto;"></a><p>Using custom marker icons.</p>
    </div>
    <p><a href="http://codepen.io/matt-west/pen/xtHdc" rel="nofollow external" class="bo">View The CodePen Demo</a></p>
    <p>Here’s the CSS code used to create the example above.</p>
    <pre><code>details {&#x000A;        border-radius: 3px;&#x000A;        background: #EEE;&#x000A;    }&#x000A;    &#x000A;    details summary {&#x000A;        font-size: 17px;&#x000A;        vertical-align: top;&#x000A;        background: #333;&#x000A;        color: #FFF;&#x000A;        border-radius: 3px;&#x000A;        padding: 5px 10px;&#x000A;        outline: none;&#x000A;    }&#x000A;    &#x000A;    details[open] summary {&#x000A;        background: #69c773;&#x000A;        color: #333;&#x000A;    }&#x000A;    &#x000A;    /* Hide the default marker. */    &#x000A;    details summary::-webkit-details-marker {&#x000A;        display: none;&#x000A;    }&#x000A;    &#x000A;    /* Add the custom marker in the default state. */    &#x000A;    details summary:before {&#x000A;        display: inline-block;&#x000A;        width: 18px;&#x000A;        height: 18px;&#x000A;        margin-right: 8px;&#x000A;        content: "";&#x000A;        background-image: url(<a href="https://s3-us-west-2.amazonaws.com/s.cdpn.io/4621/treehouse-icon-sprite.png">https://s3-us-west-2.amazonaws.com/s.cdpn.io/4621/treehouse-icon-sprite.png</a>);&#x000A;        background-repeat: no-repeat;&#x000A;        background-position: 0 0;&#x000A;    }&#x000A;    &#x000A;    /* Move the sprite image when the details box is open. */&#x000A;    details[open] summary:before {&#x000A;        background-position: -18px 0;&#x000A;    }</code></pre>
    <p>In this code, I’m using the <code>:before</code> pseudo-element to add the initial marker icon. I then create another rule that alters the positioning of the background image (so as to change the visible section of the <a href="http://blog.teamtreehouse.com/css-sprites-with-background-positioning" rel="nofollow external" class="bo">sprite</a>) when the <code>details</code> element has an <code>open</code> attribute.</p>
    <h2>Browser Support for the Details and Summary Elements</h2>
    <p>Browser support for the <code>&lt;details&gt;</code> and <code>&lt;summary&gt;</code> elements still isn’t great. Chrome, Safari, and Opera all support these elements, but Internet Explorer and Firefox do not.</p>
    <table>
    <thead>
    <tr>
    <th>IE</th>
    <th>Firefox</th>
    <th>Chrome</th>
    <th>Safari</th>
    <th>Opera</th>
    </tr>
    </thead>
    <tbody>
    <tr>
    <td>-</td>
    <td>-</td>
    <td>12.0+</td>
    <td>6.0+</td>
    <td>15.0+</td>
    </tr>
    </tbody>
    </table>
    <p>Source: <a href="http://caniuse.com/#feat=details" rel="nofollow external" class="bo">http://caniuse.com/#feat=details</a></p>
    <p>There are a number of polyfills available that will add support for the <code>&lt;details&gt;</code> and <code>&lt;summary&gt;</code> elements to other browsers. Two of the best ones that I’ve found are:</p>
    <ul>
    <li>
    <a href="https://github.com/termi/Element.details" rel="nofollow external" class="bo">Element.details</a> by <a href="https://github.com/termi" rel="nofollow external" class="bo">Егор Халимоненко</a>
    </li>
    <li>
    <a href="https://github.com/manuelbieh/Details-Polyfill" rel="nofollow external" class="bo">Details Polyfill</a> by <a href="https://github.com/manuelbieh" rel="nofollow external" class="bo">Manuel Bieh</a>
    </li>
    </ul>
    <h2>Final Thoughts on Details and Summary Elements</h2>
    <p>In this blog post you’ve learned how to use the <code>&lt;details&gt;</code> and <code>&lt;summary&gt;</code> elements to create your own collapsable UI widgets. You’ve also learned how to style these elements with CSS, as well as how to replace the default marker icon with your own images.</p>
    <p>It’s really encouraging to see browser vendors creating native implementations for some of the most commonly used UI widgets. What other UI components would you like to see added to browsers in the future?</p>
    <h2>Useful Links</h2>
    <ul>
    <li><a href="http://www.w3.org/TR/html5/interactive-elements.html#the-details-element" rel="nofollow external" class="bo">W3C HTML5 Specification: Interactive Elements</a></li>
    <li><a href="http://www.whatwg.org/specs/web-apps/current-work/multipage/interactive-elements.html#the-details-element" rel="nofollow external" class="bo">WHATWG HTML Living Standard: Interactive Elements</a></li>
    <li><a href="https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills#wiki-details-and-summary" rel="nofollow external" class="bo">Modernizr HTML5 Cross-Browser Polyfills</a></li>
    </ul>
    <p>The post <a href="http://blog.teamtreehouse.com/use-details-summary-elements" rel="nofollow external" class="bo">How to Use the Details and Summary Elements in HTML5</a> appeared first on <a href="http://blog.teamtreehouse.com" rel="nofollow external" class="bo">Treehouse Blog</a>.</p>
    </div>
]]>
</Body>
<Summary>A number of new interactive elements were introduced with HTML5 that provide native implementations of common UI widgets like dialogs and modals. Among these new additions are the &lt;details&gt;...</Summary>
<Website>http://feedproxy.google.com/~r/teamtreehouse/~3/bTxPjNqPzi8/use-details-summary-elements</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/42316/guest@my.umbc.edu/484c0df4d4d67107b2fb4d4426756fd5/api/pixel</TrackingUrl>
<Tag>android</Tag>
<Tag>code</Tag>
<Tag>css</Tag>
<Tag>css3</Tag>
<Tag>design</Tag>
<Tag>details</Tag>
<Tag>development</Tag>
<Tag>html</Tag>
<Tag>html-and-xhtml</Tag>
<Tag>html5</Tag>
<Tag>ios</Tag>
<Tag>javascript</Tag>
<Tag>responsive</Tag>
<Tag>summary</Tag>
<Tag>web</Tag>
<Group token="retired-583">Web Developer - Build Group</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-583</GroupUrl>
<AvatarUrl>https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/original.jpg?1363101197</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/large.png?1363101197</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/medium.png?1363101197</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/small.png?1363101197</AvatarUrl>
<AvatarUrl size="xsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxsmall.png?1363101197</AvatarUrl>
<Sponsor>Web Developer - Build Group</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Tue, 11 Mar 2014 15:27:22 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="42312" important="false" status="posted" url="https://my3.my.umbc.edu/posts/42312">
<Title>Meet the Staff: Stanyell Bruce</Title>
<Body>
<![CDATA[
    <div class="html-content">Here in the Office of Alumni Relations, we spend a lot of time telling stories about and talking with our wonderfully supportive alums. However, we’ve decided to turn the tables and take time to get to know the people behind … <a href="http://umbcalumni.wordpress.com/2014/03/11/meet-the-staff-stanyell-bruce/" rel="nofollow external" class="bo">Continue reading <span>→</span></a>
    </div>
]]>
</Body>
<Summary>Here in the Office of Alumni Relations, we spend a lot of time telling stories about and talking with our wonderfully supportive alums. However, we’ve decided to turn the tables and take time to...</Summary>
<Website>http://umbcalumni.wordpress.com/2014/03/11/meet-the-staff-stanyell-bruce/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/42312/guest@my.umbc.edu/066449efa7761daaad091e59c665b1ba/api/pixel</TrackingUrl>
<Tag>alumni-relations</Tag>
<Tag>alumni-relations-focus</Tag>
<Tag>balitmore-county</Tag>
<Tag>bronx</Tag>
<Tag>jim-lord</Tag>
<Tag>ny</Tag>
<Tag>staff</Tag>
<Tag>stanyell-bruce</Tag>
<Tag>umbc</Tag>
<Tag>umbc-story</Tag>
<Tag>university-of-maryland</Tag>
<Group token="retired-20">UMBC Alumni</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-20</GroupUrl>
<AvatarUrl>https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/xsmall.png?1280681147</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/original.png?1280681147</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/xxlarge.png?1280681147</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/xlarge.png?1280681147</AvatarUrl>
<AvatarUrl size="large">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/large.png?1280681147</AvatarUrl>
<AvatarUrl size="medium">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/medium.png?1280681147</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/small.png?1280681147</AvatarUrl>
<AvatarUrl size="xsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/xsmall.png?1280681147</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/xxsmall.png?1280681147</AvatarUrl>
<Sponsor>UMBC Alumni</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>false</CommentsAllowed>
<PostedAt>Tue, 11 Mar 2014 15:09:19 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="false" id="106848" important="false" status="posted" url="https://my3.my.umbc.edu/posts/106848">
<Title>Meet the Staff: Stanyell Bruce</Title>
<Body>
<![CDATA[
    <div class="html-content">Here in the Office of Alumni Relations, we spend a lot of time telling stories about and talking with our …</div>
]]>
</Body>
<Summary>Here in the Office of Alumni Relations, we spend a lot of time telling stories about and talking with our …</Summary>
<Website>https://magazine.umbc.edu/meet-the-staff-stanyell-bruce/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/106848/guest@my.umbc.edu/857230e7252abedbc76919d3d222db33/api/pixel</TrackingUrl>
<Tag>alumni</Tag>
<Tag>alumni-relations</Tag>
<Tag>alumni-relations-focus</Tag>
<Tag>balitmore-county</Tag>
<Tag>bronx</Tag>
<Tag>jim-lord</Tag>
<Tag>ny</Tag>
<Tag>stanyell-bruce</Tag>
<Tag>umbc</Tag>
<Tag>umbc-story</Tag>
<Tag>university-of-maryland</Tag>
<Group token="retired-1945">UMBC Magazine</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-1945</GroupUrl>
<AvatarUrl>https://assets1-my.umbc.edu/images/avatars/group/8/xsmall.png?1787842820</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/images/avatars/group/8/original.png?1787842820</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/images/avatars/group/8/xxlarge.png?1787842820</AvatarUrl>
<AvatarUrl size="xlarge">https://assets3-my.umbc.edu/images/avatars/group/8/xlarge.png?1787842820</AvatarUrl>
<AvatarUrl size="large">https://assets2-my.umbc.edu/images/avatars/group/8/large.png?1787842820</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/images/avatars/group/8/medium.png?1787842820</AvatarUrl>
<AvatarUrl size="small">https://assets3-my.umbc.edu/images/avatars/group/8/small.png?1787842820</AvatarUrl>
<AvatarUrl size="xsmall">https://assets1-my.umbc.edu/images/avatars/group/8/xsmall.png?1787842820</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/images/avatars/group/8/xxsmall.png?1787842820</AvatarUrl>
<Sponsor>UMBC Magazine</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>false</CommentsAllowed>
<PostedAt>Tue, 11 Mar 2014 15:09:19 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="42311" important="false" status="posted" url="https://my3.my.umbc.edu/posts/42311">
<Title>Help Send UMBC Students on Spring Break Urban Plunge by giving to our Fundly Fundraiser!</Title>
<Body>
<![CDATA[
    <div class="html-content">Spring Break will be here in 3 Days! And during Spring Break 10 of our fellowship members will be sacrificing their spring breaks to serve in the city of Baltimore during InterVarsity’s Spring Break Urban Plunge. They’re going to roll … <a href="http://umbciv.wordpress.com/2014/03/11/help-send-umbc-students-on-spring-break-urban-plunge-by-giving-to-our-fundly-fundraiser/" rel="nofollow external" class="bo">Continue reading <span>→</span></a>
    </div>
]]>
</Body>
<Summary>Spring Break will be here in 3 Days! And during Spring Break 10 of our fellowship members will be sacrificing their spring breaks to serve in the city of Baltimore during InterVarsity’s Spring...</Summary>
<Website>http://umbciv.wordpress.com/2014/03/11/help-send-umbc-students-on-spring-break-urban-plunge-by-giving-to-our-fundly-fundraiser/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/42311/guest@my.umbc.edu/020e06d254dba8778638db6a40eca0e6/api/pixel</TrackingUrl>
<Tag>posts</Tag>
<Group token="iv">Intervarsity Christian Fellowship</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/iv</GroupUrl>
<AvatarUrl>https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/094/dd82d58268453ca1c56996aa87e97fca/xsmall.png?1567536344</AvatarUrl>
<AvatarUrl size="original">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/094/dd82d58268453ca1c56996aa87e97fca/original.png?1567536344</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/094/dd82d58268453ca1c56996aa87e97fca/xxlarge.png?1567536344</AvatarUrl>
<AvatarUrl size="xlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/094/dd82d58268453ca1c56996aa87e97fca/xlarge.png?1567536344</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/094/dd82d58268453ca1c56996aa87e97fca/large.png?1567536344</AvatarUrl>
<AvatarUrl size="medium">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/094/dd82d58268453ca1c56996aa87e97fca/medium.png?1567536344</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/094/dd82d58268453ca1c56996aa87e97fca/small.png?1567536344</AvatarUrl>
<AvatarUrl size="xsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/094/dd82d58268453ca1c56996aa87e97fca/xsmall.png?1567536344</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/094/dd82d58268453ca1c56996aa87e97fca/xxsmall.png?1567536344</AvatarUrl>
<Sponsor>InterVarsity Christian Fellowship</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>false</CommentsAllowed>
<PostedAt>Tue, 11 Mar 2014 14:34:21 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="42310" important="false" status="posted" url="https://my3.my.umbc.edu/posts/42310">
<Title>Allocation request procedure:Room Reservation Approval Stamp</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <div>Please read message below from Event Planning &amp; Conference Services regarding room reservation stamps of approval when completing your Allocation Request Forms for the SGA Finance Board: </div>
    <div>________________________________________________________</div>
    <div><br></div>
    <div>To help provide some clarification on the procedure regarding the stamping of Finance Board requests please see below:</div>
    <div><br></div>
    <div>The stamp that SGA requires on the Student Organization Allocation Request form is required to confirm that the space where your organization is hosting the event has been officially reserved and that the University is aware of the activity. </div>
    <div><br></div>
    <div>All reservations should be made through the Event &amp; Conference Services Office. </div>
    <div><br></div>
    <div>If the need arises to reserve a location through another avenue, please make sure to receive written confirmation from the appropriate staff/faculty member when bringing the request form to us.  </div>
    <div><br></div>
    <div>In addition, anyone in our office can stamp the request, as we all have the ability to verify the location.</div>
    <div><br></div>
    <div>Following the above will allow our office to better and more quickly serve you.</div>
    <div><br></div>
    <div><br></div>
    <div><div>Drema Wentz M.S., M.B.A.<br><div>Manager</div>
    <div>Event &amp; Conference Services</div>
    <div>
    <a rel="nofollow external" class="bo">410-455-3621</a> (voice)</div>
    <div>
    <a rel="nofollow external" class="bo">410-455-1588</a> (fax)</div>
    </div></div>
    </div>
]]>
</Body>
<Summary>Please read message below from Event Planning &amp; Conference Services regarding room reservation stamps of approval when completing your Allocation Request Forms for the SGA Finance Board: ...</Summary>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/42310/guest@my.umbc.edu/1c4af9f20ab6cf9bcf9c7451b51fde15/api/pixel</TrackingUrl>
<Group token="retired-769">UMBC Student Organizations </Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-769</GroupUrl>
<AvatarUrl>https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/769/c1de2111b16e6b21b794451fe54ef86f/xsmall.png?1383677072</AvatarUrl>
<AvatarUrl size="original">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/769/c1de2111b16e6b21b794451fe54ef86f/original.jpg?1383677072</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/769/c1de2111b16e6b21b794451fe54ef86f/xxlarge.png?1383677072</AvatarUrl>
<AvatarUrl size="xlarge">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/769/c1de2111b16e6b21b794451fe54ef86f/xlarge.png?1383677072</AvatarUrl>
<AvatarUrl size="large">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/769/c1de2111b16e6b21b794451fe54ef86f/large.png?1383677072</AvatarUrl>
<AvatarUrl size="medium">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/769/c1de2111b16e6b21b794451fe54ef86f/medium.png?1383677072</AvatarUrl>
<AvatarUrl size="small">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/769/c1de2111b16e6b21b794451fe54ef86f/small.png?1383677072</AvatarUrl>
<AvatarUrl size="xsmall">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/769/c1de2111b16e6b21b794451fe54ef86f/xsmall.png?1383677072</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/769/c1de2111b16e6b21b794451fe54ef86f/xxsmall.png?1383677072</AvatarUrl>
<Sponsor>UMBC Student Organizations</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Tue, 11 Mar 2014 14:32:22 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="18405" important="false" status="posted" url="https://my3.my.umbc.edu/posts/18405">
<Title>Don't Miss on the Library Treasures</Title>
<Body>
<![CDATA[
    <div class="html-content">Interested in learning about the many treasures that the UMBC Library has to offer? Take a look <a href="http://youtu.be/t7m-LQB_2z8" rel="nofollow external" class="bo">here</a> and come to explore them!</div>
]]>
</Body>
<Summary>Interested in learning about the many treasures that the UMBC Library has to offer? Take a look here and come to explore them!</Summary>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/18405/guest@my.umbc.edu/f7c01e1782d059eda1c9bc20b0377809/api/pixel</TrackingUrl>
<Tag>library</Tag>
<Tag>resources</Tag>
<Tag>services</Tag>
<Group token="retired-265">First-Year Experiences </Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-265</GroupUrl>
<AvatarUrl>https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/265/950b5a3a313f74ceb036a5196ef6f735/xsmall.png?1361548489</AvatarUrl>
<AvatarUrl size="original">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/265/950b5a3a313f74ceb036a5196ef6f735/original.jpg?1361548489</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/265/950b5a3a313f74ceb036a5196ef6f735/xxlarge.png?1361548489</AvatarUrl>
<AvatarUrl size="xlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/265/950b5a3a313f74ceb036a5196ef6f735/xlarge.png?1361548489</AvatarUrl>
<AvatarUrl size="large">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/265/950b5a3a313f74ceb036a5196ef6f735/large.png?1361548489</AvatarUrl>
<AvatarUrl size="medium">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/265/950b5a3a313f74ceb036a5196ef6f735/medium.png?1361548489</AvatarUrl>
<AvatarUrl size="small">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/265/950b5a3a313f74ceb036a5196ef6f735/small.png?1361548489</AvatarUrl>
<AvatarUrl size="xsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/265/950b5a3a313f74ceb036a5196ef6f735/xsmall.png?1361548489</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/265/950b5a3a313f74ceb036a5196ef6f735/xxsmall.png?1361548489</AvatarUrl>
<Sponsor>First-Year Experiences</Sponsor>
<ThumbnailUrl size="xxlarge">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/018/405/bb6023f7e8817eda36cae6b7405ee65d/xxlarge.jpg?1352229417</ThumbnailUrl>
<ThumbnailUrl size="xlarge">https://assets3-my.umbc.edu/system/shared/thumbnails/news/000/018/405/bb6023f7e8817eda36cae6b7405ee65d/xlarge.jpg?1352229417</ThumbnailUrl>
<ThumbnailUrl size="large">https://assets2-my.umbc.edu/system/shared/thumbnails/news/000/018/405/bb6023f7e8817eda36cae6b7405ee65d/large.jpg?1352229417</ThumbnailUrl>
<ThumbnailUrl size="medium">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/018/405/bb6023f7e8817eda36cae6b7405ee65d/medium.jpg?1352229417</ThumbnailUrl>
<ThumbnailUrl size="small">https://assets2-my.umbc.edu/system/shared/thumbnails/news/000/018/405/bb6023f7e8817eda36cae6b7405ee65d/small.jpg?1352229417</ThumbnailUrl>
<ThumbnailUrl size="xsmall">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/018/405/bb6023f7e8817eda36cae6b7405ee65d/xsmall.jpg?1352229417</ThumbnailUrl>
<ThumbnailUrl size="xxsmall">https://assets3-my.umbc.edu/system/shared/thumbnails/news/000/018/405/bb6023f7e8817eda36cae6b7405ee65d/xxsmall.jpg?1352229417</ThumbnailUrl>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Tue, 11 Mar 2014 14:28:50 -0400</PostedAt>
<EditAt>Tue, 11 Mar 2014 14:30:33 -0400</EditAt>
</NewsItem>

<NewsItem contentIssues="true" id="42308" important="false" status="posted" url="https://my3.my.umbc.edu/posts/42308">
<Title>3 Lessons from the JavaScript Output of CoffeeScript</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <p>Even if you’ve been a <a href="http://teamtreehouse.com/tracks/frontend-web-development" rel="nofollow external" class="bo">front-end developer</a> for years and have done a fair amount of JavaScript programming throughout your career, there may be a few things you’ve missed out on from those delivery pressures piled on you in your day-to-day development life.</p>
    <p>Let’s take a step back, pause, take a breath and review some tricks and best practices you can learn from looking at the compiled JavaScript code resulting from CoffeeScript.</p>
    <h2>Example Code</h2>
    <p>Here’s an example of CoffeeScript code and its JavaScript output.</p>
    <p>CoffeeScript:</p>
    <pre><code>myName = "Andrew"&#x000A;    age = 30&#x000A;    names = [myName, "Jim", "Michael", "Micah", "Yvette", "Shawna"]&#x000A;    &#x000A;    say = (name) -&gt;&#x000A;      if name is "Andrew"&#x000A;        "Hi Chalkers!"&#x000A;      else&#x000A;        "Hi #{name}!"&#x000A;    &#x000A;    for name in names&#x000A;      console.log say(name)&#x000A;    </code></pre>
    <p>JavaScript:</p>
    <pre><code>(function() {&#x000A;      var age, myName, name, names, say, _i, _len;&#x000A;    &#x000A;      myName = "Andrew";&#x000A;    &#x000A;      age = 30;&#x000A;    &#x000A;      names = [myName, "Jim", "Michael", "Micah", "Yvette", "Shawna"];&#x000A;    &#x000A;      say = function(name) {&#x000A;        if (name === "Andrew") {&#x000A;          return "Hi Chalkers!";&#x000A;        } else {&#x000A;          return "Hi " + name + "!";&#x000A;        }&#x000A;      };&#x000A;    &#x000A;      for (_i = 0, _len = names.length; _i &lt; _len; _i++) {&#x000A;        name = names[_i];&#x000A;        console.log(say(name));&#x000A;      }&#x000A;    &#x000A;    }).call(this);&#x000A;    </code></pre>
    <p>Executing the above code will result in the following output in your console:</p>
    <blockquote><p>Hi Chalkers!<br>
    Hi Jim!<br>
    Hi Michael!<br>
    Hi Micah!<br>
    Hi Yvette!<br>
    Hi Shawna!</p></blockquote>
    <p>Let’s deconstruct some of the JavaScript output and ask questions about why things are the way they are and see what we can learn.</p>
    <h2>1. Don’t Pollute the Global Scope</h2>
    <p>Why wrap your code in something like this?</p>
    <pre><code>(function() {&#x000A;    //Your code code here&#x000A;    }).call(this);&#x000A;    </code></pre>
    <p>First off, what is this code? It’s an <a href="http://teamtreehouse.com/library/javascript-foundations/functions/anonymous-functions" rel="nofollow external" class="bo">anonymous function</a>. The <code>call</code> method afterward means this is a self-executing anonymous function. In other projects or examples, you may see it written like this:</p>
    <pre><code>(function() {&#x000A;    //Your code code here&#x000A;    })(this);&#x000A;    </code></pre>
    <p>Or:</p>
    <pre><code>(function() {&#x000A;    //Your code code here&#x000A;    })(window);&#x000A;    </code></pre>
    <p>The <code>this</code> variable in the context of being ran in the browser is the <code>window</code> object. This protects the global <a href="http://teamtreehouse.com/library/javascript-foundations/functions/scope" rel="nofollow external" class="bo">scope</a> from being polluted by your variables. When you normally define values outside of a <code>function</code> like:</p>
    <pre><code>var myName = "Andrew";&#x000A;    </code></pre>
    <p>You can access them via the <code>window</code> object like this <code>window.myName;</code>.</p>
    <p>The above variable will be the string of <code>"Andrew."</code> Now, you may think, “Great! Here’s another way I can access my variables.” But it’s not that simple. When working on large projects with multiple people or even including external dependancies and frameworks, you can’t guarantee the variables you’re declaring won’t clash with their variables if you’re polluting the global scope. You can’t guarantee that everyone is using this best practice either.</p>
    <p>In order to protect your variables from clashing with other variables and prevent any unintended behavior, you’d need to wrap them up with any additional code you want to access those said variables inside a self-executing anonymous function.</p>
    <p>So this code:</p>
    <pre><code>(function() {&#x000A;      var myName = "Andrew";&#x000A;      console.log(myName);&#x000A;    }).call(this);&#x000A;    </code></pre>
    <p>will output <code>Andrew</code> in to the JavaScript console.</p>
    <p>But:</p>
    <pre><code>(function() {&#x000A;      var myName = "Andrew";&#x000A;      console.log(window.myName);&#x000A;    }).call(this);&#x000A;    </code></pre>
    <p>will output <code>undefined</code> because the <code>myName</code> variable is declared in the scope of the anonymous function and thus not binding it to the <code>window</code> object.</p>
    <p>The next time you’re writing a less-than-trivial JavaScript application, try wrapping your code in an anonymous function.</p>
    <h2>2. Declare Your Variables Together</h2>
    <p>Declaring variables all together like this is a neat trick.</p>
    <pre><code>  var age, myName, name, names, say, _i, _len;  &#x000A;    </code></pre>
    <p>Not only are you saving on space writing <code>var</code> only once but you can give others an idea about what your application is about with a quick glance. This may be a tad more digestible than scanning through all of the code to get an idea of what variables you can use.</p>
    <p>However, in large complicated applications, you’d probably have several JavaScript files, all with their own self-executing anonymous functions that only deal with a specific set of code. This would avoid a long first line and confusing things for new developers to the project. Be modular! You can always combine these files for deployment later.</p>
    <h2>3. Operators Matter</h2>
    <p>Did you notice the line <code>if name is "Andrew"</code> gets compiled down to <code>if (name === "Andrew")</code>? Why did CoffeeScript use <code>===</code> rather than <code>==</code>?</p>
    <p>When you use the <code>==</code> operator, JavaScript tries to coerce each of the <a href="https://en.wikipedia.org/wiki/Operand" rel="nofollow external" class="bo">operands</a> (the variables either side of the operator) to match one another. This can lead to some very unexpected outcomes. Here are some mind-melting examples:</p>
    <pre><code>0 == ''; //true&#x000A;    1 == '1'; //true&#x000A;    false == ''; //true&#x000A;    false == []; //true&#x000A;    false == 'false'; //false&#x000A;    </code></pre>
    <p>However, when you use <code>===</code> it compares the types of the operands first and then the values. This can be quicker operation than its <code>==</code> counterpart because the JavaScript interpreter doesn’t have convert the types first before comparing the objects. If they aren’t of the same type, it will automatically return <code>false</code>, which is what you’d be expecting.</p>
    <p>So if you’re confirming values, it’s best to use <code>===</code> to prevent any weird goings-on. If you want to look at some more examples, check out this <a href="http://stackoverflow.com/a/359509/155417" rel="nofollow external" class="bo">Stack Overflow post</a>.</p>
    <p>If you’re ever doing any comparisons, it’s best to use <code>===</code> if you’re expecting the operands to be of the same type, which is the case in most instances.</p>
    <h2>Conclusion</h2>
    <p>Even if you don’t write much pure JavaScript anymore, it’s good to know these things as you never know when you’re going to need to get your hands dirty on an old code base or if the team you’re working on doesn’t use or want to use CoffeeScript.</p>
    <p>I’ve always found that learning best practices in one language or framework helps introduce those in other situations.</p>
    <p>Is there anything you’ve spotted in the JavaScript output by the CoffeeScript compiler that you’ve found interesting? Or have there been other things you’ve taken from learning one language and taken it into others?</p>
    <p>The post <a href="http://blog.teamtreehouse.com/3-lessons-javascript-output-coffeescript" rel="nofollow external" class="bo">3 Lessons from the JavaScript Output of CoffeeScript</a> appeared first on <a href="http://blog.teamtreehouse.com" rel="nofollow external" class="bo">Treehouse Blog</a>.</p>
    </div>
]]>
</Body>
<Summary>Even if you’ve been a front-end developer for years and have done a fair amount of JavaScript programming throughout your career, there may be a few things you’ve missed out on from those delivery...</Summary>
<Website>http://feedproxy.google.com/~r/teamtreehouse/~3/cNGaTILjtkg/3-lessons-javascript-output-coffeescript</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/42308/guest@my.umbc.edu/7d4948f3b4d21d154f43f2351f19c4ed/api/pixel</TrackingUrl>
<Tag>android</Tag>
<Tag>css</Tag>
<Tag>design</Tag>
<Tag>development</Tag>
<Tag>html</Tag>
<Tag>ios</Tag>
<Tag>javascript</Tag>
<Tag>responsive</Tag>
<Tag>web</Tag>
<Group token="retired-583">Web Developer - Build Group</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-583</GroupUrl>
<AvatarUrl>https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/original.jpg?1363101197</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/large.png?1363101197</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/medium.png?1363101197</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/small.png?1363101197</AvatarUrl>
<AvatarUrl size="xsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxsmall.png?1363101197</AvatarUrl>
<Sponsor>Web Developer - Build Group</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Tue, 11 Mar 2014 13:16:51 -0400</PostedAt>
<EditAt>Tue, 11 Mar 2014 13:16:51 -0400</EditAt>
</NewsItem>

</News>
