Commit 09b27107 by Kyle Fiedler

merged with default

--HG--
branch : templates-kf-print
parents 0cbd6fa2 42daf8dd
No preview for this file type
...@@ -26,6 +26,7 @@ someone else already signed up with that username. Try a different, ...@@ -26,6 +26,7 @@ someone else already signed up with that username. Try a different,
more unique username. For example, try adding a random number to the more unique username. For example, try adding a random number to the
end.</p> end.</p>
<a name="othercourses">
<h2> I am interested in a different subject. What other courses do <h2> I am interested in a different subject. What other courses do
you offer? </h2> you offer? </h2>
...@@ -33,6 +34,7 @@ you offer? </h2> ...@@ -33,6 +34,7 @@ you offer? </h2>
range of courses in the future, at present, 6.002x is the only course range of courses in the future, at present, 6.002x is the only course
available.</p> available.</p>
<a name="start">
<h2>How will I know that the course has started?</h2> <h2>How will I know that the course has started?</h2>
<p> The course will start on March 5. Check the website <p> The course will start on March 5. Check the website
...@@ -41,30 +43,44 @@ the course website 6.002x.mitx.mit.edu on or slightly before March 5 ...@@ -41,30 +43,44 @@ the course website 6.002x.mitx.mit.edu on or slightly before March 5
so you can login, begin to get familiar with the site and start the so you can login, begin to get familiar with the site and start the
course.</p> course.</p>
<a name="login">
<h2> Why is there no log-in button?</h2> <h2> Why is there no log-in button?</h2>
<p> You will not be able to log into the course until either the <p> You will not be able to log into the course until either the
starting date, or shortly before.</p> starting date, or shortly before.</p>
<a name="schedule">
<h2> Does the class have a schedule?</h2> <h2> Does the class have a schedule?</h2>
<p> The lectures are on-line videos, and may be watched at your own <p> The lectures are on-line videos, and may be watched at your own
pace and schedule. The course will have fixed deadlines for homework pace and schedule. The course will have fixed deadlines for homework
assignments and exams. </p> assignments and exams. </p>
<a name="enrollissues">
<h2> I just enrolled for the course. I have not received any form <h2> I just enrolled for the course. I have not received any form
of acknowledgement that I have enrolled.</h2> of acknowledgement that I have enrolled.</h2>
<p> You should receive a single activation e-mail. If you did not, <p> You should receive a single activation e-mail. If you did not, the
check your spam folder, or try to register again with your correct most common issues are:
e-mail address and a new username (most errors are from typos in <ul>
e-mail addresses).</p> <li> Typo in e-mail address
<li> Old browser. We recommend trying a modern version of Firefox or Chrome
<li> JavaScript disabled
<li> Activation e-mail in spam folder. Check spam folder.
<li> Non-unique username. Try adding a random string at the end.
</ul>
<p>If you run into issues, try recreating your account. There is no need
to do anything about the old account, if any. If it is not activated
through the link in the e-mail, it will disappear later.
<a name="howdropcourse">
<h2> How do I drop the course?</h2> <h2> How do I drop the course?</h2>
<p> You do not have to do anything. You can simply stop working on the <p> You do not have to do anything. You can simply stop working on the
course at any time you choose to do so.</p> course at any time you choose to do so.</p>
<a name="ifdropcourse">
<h2>What happens if I drop the course?</h2> <h2>What happens if I drop the course?</h2>
<p> For the prototype course, learners achieving grades of "A," "B," <p> For the prototype course, learners achieving grades of "A," "B,"
...@@ -76,6 +92,7 @@ will be disclosed outside of MITx. You can also choose to opt for a ...@@ -76,6 +92,7 @@ will be disclosed outside of MITx. You can also choose to opt for a
no record at any time. However, the posts you make while enrolled in no record at any time. However, the posts you make while enrolled in
the class will remain visible. </p> the class will remain visible. </p>
<a name="whatismitx">
<h2> <h2>
What is <i>MITx</i>?</h2> What is <i>MITx</i>?</h2>
...@@ -104,6 +121,7 @@ education. The launch of <i>MITx</i> represents a next step forward in that ...@@ -104,6 +121,7 @@ education. The launch of <i>MITx</i> represents a next step forward in that
effort. effort.
</p> </p>
<a name="differentcampus">
<h2> <h2>
What is 6.002x, and how is it different from the on-campus version of What is 6.002x, and how is it different from the on-campus version of
6.002? 6.002?
...@@ -133,6 +151,7 @@ version of 6.002. ...@@ -133,6 +151,7 @@ version of 6.002.
professors Anant Agarwal and Jeffrey H. Lang for 6.002. professors Anant Agarwal and Jeffrey H. Lang for 6.002.
</p> </p>
<a name="howenroll">
<h2> <h2>
How do I enroll in 6.002x? How do I enroll in 6.002x?
</h2> </h2>
...@@ -141,6 +160,7 @@ To enroll, visit <a href="http://mitx.mit.edu">http://mitx.mit.edu</a> ...@@ -141,6 +160,7 @@ To enroll, visit <a href="http://mitx.mit.edu">http://mitx.mit.edu</a>
and sign up. and sign up.
</p> </p>
<a name="whenavailable">
<h2> <h2>
When will the course be available online? When will the course be available online?
</h2> </h2>
...@@ -149,6 +169,7 @@ When will the course be available online? ...@@ -149,6 +169,7 @@ When will the course be available online?
6.002x will become available online on Monday, March 5. 6.002x will become available online on Monday, March 5.
</p> </p>
<a name="timeline">
<h2> <h2>
Do I need to follow a set timeline in completing 6.002x? Do I need to follow a set timeline in completing 6.002x?
</h2> </h2>
...@@ -160,6 +181,7 @@ final exam will be given within a specific range of days. However, ...@@ -160,6 +181,7 @@ final exam will be given within a specific range of days. However,
faster-paced learners can proceed multiple weeks ahead if they choose. faster-paced learners can proceed multiple weeks ahead if they choose.
</p> </p>
<a name="workrequired">
<h2> <h2>
How much time is required to complete the course? How much time is required to complete the course?
</h2> </h2>
...@@ -169,6 +191,7 @@ course. However, the time taken by individual students might vary ...@@ -169,6 +191,7 @@ course. However, the time taken by individual students might vary
considerably depending on background and skill. considerably depending on background and skill.
</p> </p>
<a name="instructors">
<h2> <h2>
Who are the instructors for 6.002x? Who are the instructors for 6.002x?
</h2> </h2>
...@@ -178,6 +201,7 @@ Gerald Sussman and Piotr Mitros. The team also includes several ...@@ -178,6 +201,7 @@ Gerald Sussman and Piotr Mitros. The team also includes several
teaching assistants (TAs). teaching assistants (TAs).
</p> </p>
<a name="worklike">
<h2> <h2>
What is the work like in 6.002x? What is the work like in 6.002x?
</h2> </h2>
...@@ -199,6 +223,7 @@ videos. Lab and homework exercises will round out the week. Tutorials ...@@ -199,6 +223,7 @@ videos. Lab and homework exercises will round out the week. Tutorials
are also provided as additional reference material. are also provided as additional reference material.
</p> </p>
<a name="questionsduringcourse">
<h2> <h2>
What if I have a question during the course? What if I have a question during the course?
</h2> </h2>
...@@ -209,6 +234,7 @@ documents, FAQs, tutorials and videos on using the various components ...@@ -209,6 +234,7 @@ documents, FAQs, tutorials and videos on using the various components
of the course will also be provided. of the course will also be provided.
</p> </p>
<a name="collaboration">
<h2> <h2>
Will 6.002x offer any means for collaboration among online learners? Will 6.002x offer any means for collaboration among online learners?
</h2> </h2>
...@@ -217,6 +243,7 @@ Yes. 6.002x will offer modest support for collaborative work through a ...@@ -217,6 +243,7 @@ Yes. 6.002x will offer modest support for collaborative work through a
prototype wiki and discussion forum. prototype wiki and discussion forum.
</p> </p>
<a name="prereqs">
<h2> <h2>
Are there prerequisites to take the course? Are there prerequisites to take the course?
</h2> </h2>
...@@ -239,6 +266,7 @@ remedial differential equations component for students with weaker ...@@ -239,6 +266,7 @@ remedial differential equations component for students with weaker
math backgrounds. math backgrounds.
</p> </p>
<a name="cost">
<h2> <h2>
How much does the course cost? How much does the course cost?
</h2> </h2>
...@@ -246,9 +274,10 @@ How much does the course cost? ...@@ -246,9 +274,10 @@ How much does the course cost?
All of the courses on <i>MITx</i> will be free of charge. Those who have the All of the courses on <i>MITx</i> will be free of charge. Those who have the
ability and motivation to demonstrate mastery of content can receive a ability and motivation to demonstrate mastery of content can receive a
credential for a modest fee. For this prototype course, the fee for a credential for a modest fee. For this prototype course, the fee for a
credential will be waived. credential will be waived.
</p> </p>
<a name="credential">
<h2> <h2>
What is a credential? What is a credential?
</h2> </h2>
...@@ -261,6 +290,7 @@ testing center or otherwise have your identity certified in order to ...@@ -261,6 +290,7 @@ testing center or otherwise have your identity certified in order to
receive this certificate. receive this certificate.
</p> </p>
<a name="whograding">
<h2> <h2>
Who is grading the course? Who is grading the course?
</h2> </h2>
...@@ -269,6 +299,7 @@ Who is grading the course? ...@@ -269,6 +299,7 @@ Who is grading the course?
including practice exercises, homework assignments, labs and exams. including practice exercises, homework assignments, labs and exams.
</p> </p>
<a name="whatpassing">
<h2> <h2>
What is a passing grade? What is a passing grade?
</h2> </h2>
...@@ -279,6 +310,7 @@ affecting a student&rsquo;s grade and the grade thresholds will be ...@@ -279,6 +310,7 @@ affecting a student&rsquo;s grade and the grade thresholds will be
posted on the course website when the course comes online. posted on the course website when the course comes online.
</p> </p>
<a name="textbook">
<h2> <h2>
Do I need to buy a textbook? Do I need to buy a textbook?
</h2> </h2>
...@@ -290,23 +322,28 @@ provided electronically as part of the online course. While the ...@@ -290,23 +322,28 @@ provided electronically as part of the online course. While the
textbook is recommended, it is not required. The electronic text is textbook is recommended, it is not required. The electronic text is
provided for personal use in connection with this course only. The provided for personal use in connection with this course only. The
copyright for the book is owned by Elsevier. The book can be purchased copyright for the book is owned by Elsevier. The book can be purchased
on Amazon. on <a href="http://www.amazon.com/exec/obidos/ASIN/1558607358/ref=nosim/mitopencourse-20" target="_blank">Amazon</a>.
</p> </p>
<a name="technicalrequirements">
<h2> <h2>
Do I need to have special software to access 6.002x? Do I need to have special software to access 6.002x?
</h2> </h2>
<p> <p>
No, you do not need special software to access 6.002x, as you will No, you do not need special software to access 6.002x, as you will
access the online interactive course through your browser. The course access the online interactive course through your browser. The course
website was developed and tested primarily with Google Chrome. We website was developed and tested primarily with the current version of
support current versions of Mozilla Firefox as well. The video player Google Chrome. We support current versions of Mozilla Firefox as
is designed to work with Flash. While we provide a partial non-Flash well. The video player is based on Youtube, and is designed to work
fallback for the video, as well as partial support for Internet with Flash. We provide a partial non-Flash fallback for the video, but
Explorer, other browsers and tablets, portions of the functionality this uses Google's experimental HTML5 API, and hence we cannot
will be unavailable. guarantee those will continue to function for the duration of the
semester. We provide partial support for Internet Explorer, as well as
other browsers and tablets, but portions of the functionality will be
unavailable.
</p> </p>
<a name="futurecourses">
<h2> <h2>
When will the next courses become available and what topics will they be on? When will the next courses become available and what topics will they be on?
</h2> </h2>
......
../data/problems/Lab2A.html
\ No newline at end of file
<li><a href="javascript:goto_page(9)"> Contents ix </a>
<li><a href="javascript:goto_page(1)"> Preamble i </a>
<ul> <li><a href="javascript:goto_page(1)"> Comments on the Book i</a>
<li><a href="javascript:goto_page(4)"> About the Authors iv</a>
<li><a href="javascript:goto_page(7)"> Dedication vii</a>
<li><a href="javascript:goto_page(19)"> Preface xix </a>
<li><a href="javascript:goto_page(19)"> Approach xix </a>
<li><a href="javascript:goto_page(21)"> Overview xxi </a>
<li><a href="javascript:goto_page(23)"> Course Organization xxiii </a>
<li><a href="javascript:goto_page(23)"> Web Supplements xxiii </a>
<li><a href="javascript:goto_page(24)"> Acknowledgments xxiv </a>
</ul>
<li><a href="javascript:goto_page(27)"> The Circuit Abstraction </a> <li><a href="javascript:goto_page(27)"> 1 The Circuit Abstraction 3 </a>
<ul> <li><a href="javascript:goto_page(27)"> The Power of Abstraction </a> <ul> <li><a href="javascript:goto_page(27)"> 1.1 The Power of Abstraction 3 </a>
<li><a href="javascript:goto_page(29)"> The Lumped Circuit Abstraction</a> <li><a href="javascript:goto_page(29)"> 1.2 The Lumped Circuit Abstraction 4 </a>
<li><a href="javascript:goto_page(33)"> The Lumped Matter Discipline </a> <li><a href="javascript:goto_page(33)"> 1.3 The Lumped Matter Discipline 9 </a>
<li><a href="javascript:goto_page(37)"> Limitations of the Lumped Circuit Abstraction </a> <li><a href="javascript:goto_page(37)"> 1.4 Limitations of the Lumped Circuit Abstraction 13 </a>
<li><a href="javascript:goto_page(39)"> Practical Two-Terminal Elements </a> <li><a href="javascript:goto_page(39)"> 1.5 Practical Two-Terminal Elements 15 </a>
<ul> <li><a href="javascript:goto_page(40)"> Batteries </a> <ul> <li><a href="javascript:goto_page(40)"> 1.5.1 Batteries 16 </a>
<li><a href="javascript:goto_page(42)"> Linear Resistors </a> <li><a href="javascript:goto_page(42)"> 1.5.2 Linear Resistors 18 </a>
<li><a href="javascript:goto_page(49)"> Associated Variables Convention </a> <li><a href="javascript:goto_page(49)"> 1.5.3 Associated Variables Convention 25 </a>
</ul> <li><a href="javascript:goto_page(53)"> Ideal Two-Terminal Elements </a> </ul> <li><a href="javascript:goto_page(53)"> 1.6 Ideal Two-Terminal Elements 29 </a>
<ul> <li><a href="javascript:goto_page(54)"> Ideal Voltage Sources, Wires and Resistors </a> <ul> <li><a href="javascript:goto_page(54)"> 1.6.1 Ideal Voltage Sources, Wires and Resistors 30 </a>
<li><a href="javascript:goto_page(56)"> Element Laws </a> <li><a href="javascript:goto_page(56)"> 1.6.2 Element Laws 32 </a>
<li><a href="javascript:goto_page(57)"> The Current Source</a> <li><a href="javascript:goto_page(57)"> 1.6.3 The Current Source 33 </a>
</ul> <li><a href="javascript:goto_page(60)"> Modeling Physical Elements </a> </ul> <li><a href="javascript:goto_page(60)"> 1.7 Modeling Physical Elements 36 </a>
<li><a href="javascript:goto_page(64)"> Signal Representation </a> <li><a href="javascript:goto_page(64)"> 1.8 Signal Representation 40 </a>
<ul> <li><a href="javascript:goto_page(65)"> Analog Signals</a> <ul> <li><a href="javascript:goto_page(65)"> 1.8.1 Analog Signals 41 </a>
<li><a href="javascript:goto_page(66)"> Digital Signals</a> <li><a href="javascript:goto_page(66)"> 1.8.3 Digital Signals 42 </a>
</ul> <li><a href="javascript:goto_page(70)"> Summary </a> </ul> <li><a href="javascript:goto_page(70)"> 1.9 Summary 46 </a>
</ul> <li><a href="javascript:goto_page(77)"> Resistive Networks </a> </ul> <li><a href="javascript:goto_page(77)"> 2 Resistive Networks 53 </a>
<ul> <li><a href="javascript:goto_page(78)"> Terminology </a> <ul> <li><a href="javascript:goto_page(78)"> 2.1 Terminology 54 </a>
<li><a href="javascript:goto_page(79)"> Kirchhoff's Laws </a> <li><a href="javascript:goto_page(79)"> 2.2 Kirchhoff's Laws 55 </a>
<ul> <li><a href="javascript:goto_page(80)"> KCL </a> <ul> <li><a href="javascript:goto_page(80)"> 2.2.1 KCL 56 </a>
<li><a href="javascript:goto_page(84)"> KVL </a> <li><a href="javascript:goto_page(84)"> 2.2.1 KVL 60 </a>
</ul> <li><a href="javascript:goto_page(90)"> Circuit Analysis: Basic Method </a> </ul> <li><a href="javascript:goto_page(90)"> 2.3 Circuit Analysis: Basic Method 66 </a>
<ul> <li><a href="javascript:goto_page(91)"> Single-Resistor Circuits </a> <ul> <li><a href="javascript:goto_page(91)"> 2.3.1 Single-Resistor Circuits 67 </a>
<li><a href="javascript:goto_page(94)"> Quick Intuitive Analysis of Single-Resistor Circuits </a> <li><a href="javascript:goto_page(94)"> 2.3.2 Quick Intuitive Analysis of Single-Resistor Circuits 70 </a>
<li><a href="javascript:goto_page(95)"> Energy Conservation </a> <li><a href="javascript:goto_page(95)"> 2.3.3 Energy Conservation 71 </a>
<li><a href="javascript:goto_page(97)"> Voltage and Current Dividers </a> <li><a href="javascript:goto_page(97)"> 2.3.4 Voltage and Current Dividers 73 </a>
<li><a href="javascript:goto_page(99)"> Voltage Dividers </a> <li><a href="javascript:goto_page(99)"> 2.3.4.1 Voltage Dividers 73 </a>
<li><a href="javascript:goto_page(100)"> Resistors in Series </a> <li><a href="javascript:goto_page(100)"> 2.3.4.2 Resistors in Series 76 </a>
<li><a href="javascript:goto_page(104)"> Current Dividers </a> <li><a href="javascript:goto_page(104)"> 2.3.4.3 Current Dividers 80 </a>
<li><a href="javascript:goto_page(108)"> Resistors in Parallel </a> <li><a href="javascript:goto_page(108)"> 2.3.4.4 Resistors in Parallel 82 </a>
<li><a href="javascript:goto_page(108)"> A More Complex Circuit </a> <li><a href="javascript:goto_page(108)"> 2.3.5 A More Complex Circuit 84 </a>
</ul> <li><a href="javascript:goto_page(131)"> Intuitive Method of Circuit Analysis </a> </ul> <li><a href="javascript:goto_page(131)"> 2.4 Intuitive Method of Circuit Analysis 107 </a>
<li><a href="javascript:goto_page(132)"> More Examples </a> <li><a href="javascript:goto_page(132)"> 2.5 More Examples 108 </a>
<li><a href="javascript:goto_page(122)"> Dependent Sources and the Control Concept </a> <li><a href="javascript:goto_page(122)"> 2.6 Dependent Sources and the Control Concept 98 </a>
<ul> <li><a href="javascript:goto_page(126)"> Circuits with Dependent Sources </a> <ul> <li><a href="javascript:goto_page(126)"> 2.6.1 Circuits with Dependent Sources 102 </a>
</ul> <li><a href="javascript:goto_page(131)"> A Formulation Suitable for a Computer Solution * </a> </ul> <li><a href="javascript:goto_page(131)"> 2.7 A Formulation Suitable for a Computer Solution * 107 </a>
<li><a href="javascript:goto_page(132)"> Summary </a> <li><a href="javascript:goto_page(132)"> 2.8 Summary 108 </a>
</ul> <li><a href="javascript:goto_page(143)"> Network Theorems </a> </ul> <li><a href="javascript:goto_page(143)"> 3 Network Theorems 119 </a>
<ul> <li><a href="javascript:goto_page(143)"> Introduction </a> <ul> <li><a href="javascript:goto_page(143)"> 3.1 Introduction 119 </a>
<li><a href="javascript:goto_page(143)"> The Node Voltage </a> <li><a href="javascript:goto_page(143)"> 3.2 The Node Voltage 119 </a>
<li><a href="javascript:goto_page(149)"> The Node Method </a> <li><a href="javascript:goto_page(149)"> 3.3 The Node Method 125 </a>
<ul> <li><a href="javascript:goto_page(154)"> Node Method: A Second Example </a> <ul> <li><a href="javascript:goto_page(154)"> 3.3.1 Node Method: A Second Example 130 </a>
<li><a href="javascript:goto_page(159)"> Floating Independent Voltage Sources </a> <li><a href="javascript:goto_page(159)"> 3.3.2 Floating Independent Voltage Sources 135 </a>
<li><a href="javascript:goto_page(163)"> Dependent Sources and the Node Method </a> <li><a href="javascript:goto_page(163)"> 3.3.3 Dependent Sources and the Node Method 139 </a>
<li><a href="javascript:goto_page(169)"> The Conductance and Source Matrices *}</a> <li><a href="javascript:goto_page(169)"> 3.3.4 The Conductance and Source Matrices * 145 </a>
</ul> <li><a href="javascript:goto_page(169)"> Loop Method * </a> </ul> <li><a href="javascript:goto_page(169)"> 3.4 Loop Method * 145 </a>
<li><a href="javascript:goto_page(169)"> Superposition </a> <li><a href="javascript:goto_page(169)"> 3.5 Superposition 145 </a>
<ul> <li><a href="javascript:goto_page(176)"> Superposition Rules for Dependent Sources </a> <ul> <li><a href="javascript:goto_page(176)"> 3.5.1 Superposition Rules for Dependent Sources 152 </a>
</ul> <li><a href="javascript:goto_page(182)"> Th\'e}venin's Theorem and Norton's Theorem </a> </ul> <li><a href="javascript:goto_page(182)"> 3.6 Thevenin's Theorem and Norton's Theorem 158 </a>
<ul> <li><a href="javascript:goto_page(182)"> The Th\'e}venin Equivalent Network </a> <ul> <li><a href="javascript:goto_page(182)"> 3.6.1 The Thevenin Equivalent Network 158 </a>
<li><a href="javascript:goto_page(192)"> The Norton Equivalent Network </a> <li><a href="javascript:goto_page(192)"> 3.6.2 The Norton Equivalent Network 168 </a>
<li><a href="javascript:goto_page(195)"> More Examples </a> <li><a href="javascript:goto_page(195)"> 3.6.3 More Examples 171 </a>
</ul> <li><a href="javascript:goto_page(201)"> Summary </a> </ul> <li><a href="javascript:goto_page(201)"> 3.7 Summary 177 </a>
</ul> <li><a href="javascript:goto_page(217)"> Analysis of Nonlinear Circuits </a> </ul> <li><a href="javascript:goto_page(217)"> 4 Analysis of Nonlinear Circuits 193 </a>
<ul> <li><a href="javascript:goto_page(217)"> Introduction to Nonlinear Elements </a> <ul> <li><a href="javascript:goto_page(217)"> 4.1 Introduction to Nonlinear Elements 193 </a>
<li><a href="javascript:goto_page(221)"> Analytical Solutions </a> <li><a href="javascript:goto_page(221)"> 4.2 Analytical Solutions 197 </a>
<li><a href="javascript:goto_page(227)"> Graphical Analysis </a> <li><a href="javascript:goto_page(227)"> 4.3 Graphical Analysis 203 </a>
<li><a href="javascript:goto_page(230)"> Piecewise Linear Analysis </a> <li><a href="javascript:goto_page(230)"> 4.4 Piecewise Linear Analysis 206 </a>
<ul> <li><a href="javascript:goto_page(238)"> Improved Piecewise Linear Models for Nonlinear Elements * </a> <ul> <li><a href="javascript:goto_page(238)"> 4.4.1 Improved Piecewise Linear Models for Nonlinear Elements * 214 </a>
</ul> <li><a href="javascript:goto_page(238)"> Incremental Analysis </a> </ul> <li><a href="javascript:goto_page(238)"> 4.5 Incremental Analysis 214 </a>
<li><a href="javascript:goto_page(253)"> Summary </a> <li><a href="javascript:goto_page(253)"> 4.6 Summary 229 </a>
</ul> <li><a href="javascript:goto_page(267)"> The Digital Abstraction </a> </ul> <li><a href="javascript:goto_page(267)"> 5 The Digital Abstraction 243 </a>
<ul> <li><a href="javascript:goto_page(269)"> Voltage Levels and the Static Discipline </a> <ul> <li><a href="javascript:goto_page(269)"> 5.1 Voltage Levels and the Static Discipline 245 </a>
<li><a href="javascript:goto_page(256+24)"> Boolean Logic </a> <li><a href="javascript:goto_page(256+24)"> 5.2 Boolean Logic 256 </a>
<li><a href="javascript:goto_page(258+24)"> Combinational Gates </a> <li><a href="javascript:goto_page(258+24)"> 5.3 Combinational Gates 258 </a>
<li><a href="javascript:goto_page(261+24)"> Standard Sum-of-Products Representation </a> <li><a href="javascript:goto_page(261+24)"> 5.4 Standard Sum-of-Products Representation 261 </a>
<li><a href="javascript:goto_page(262+24)"> Simplifying Logic Expressions * </a> <li><a href="javascript:goto_page(262+24)"> 5.5 Simplifying Logic Expressions * 262 </a>
<li><a href="javascript:goto_page(267+24)"> Number Representation </a> <li><a href="javascript:goto_page(267+24)"> 5.6 Number Representation 267 </a>
<li><a href="javascript:goto_page(274+24)"> Summary </a> <li><a href="javascript:goto_page(274+24)"> 5.7 Summary 274 </a>
</ul> <li><a href="javascript:goto_page(285+24)"> The MOSFET Switch </a> </ul> <li><a href="javascript:goto_page(285+24)"> 6 The MOSFET Switch 285 </a>
<ul> <li><a href="javascript:goto_page(285+24)"> The Switch </a> <ul> <li><a href="javascript:goto_page(285+24)"> 6.1 The Switch 285 </a>
<li><a href="javascript:goto_page(288+24)"> Logic Functions Using Switches </a> <li><a href="javascript:goto_page(288+24)"> 6.2 Logic Functions Using Switches 288 </a>
<li><a href="javascript:goto_page(298+24)"> The MOSFET Device and Its S Model </a> <li><a href="javascript:goto_page(298+24)"> 6.3 The MOSFET Device and Its S Model 298 </a>
<li><a href="javascript:goto_page(291+24)"> MOSFET Switch Implementation of Logic Gates </a> <li><a href="javascript:goto_page(291+24)"> 6.4 MOSFET Switch Implementation of Logic Gates 291 </a>
<li><a href="javascript:goto_page(296+24)"> Static Analysis Using the S Model </a> <li><a href="javascript:goto_page(296+24)"> 6.5 Static Analysis Using the S Model 296 </a>
<li><a href="javascript:goto_page(300+24)"> The SR Model of the MOSFET </a> <li><a href="javascript:goto_page(300+24)"> 6.6 The SR Model of the MOSFET 300 </a>
<li><a href="javascript:goto_page(301+24)"> Physical Structure of the MOSFET $*$ </a> <li><a href="javascript:goto_page(301+24)"> 6.7 Physical Structure of the MOSFET * 301 </a>
<li><a href="javascript:goto_page(306+24)"> Static Analysis Using the SR Model </a> <li><a href="javascript:goto_page(306+24)"> 6.8 Static Analysis Using the SR Model 306 </a>
<ul> <li><a href="javascript:goto_page(311+24)"> Static Analysis of the \it NAND} Gate Using the SR Model </a> <ul> <li><a href="javascript:goto_page(311+24)"> 6.8.1 Static Analysis of the NAND Gate Using the SR Model 311 </a>
</ul> <li><a href="javascript:goto_page(314+24)"> Signal Restoration </a> </ul> <li><a href="javascript:goto_page(314+24)"> 6.9 Signal Restoration 314 </a>
<ul> <li><a href="javascript:goto_page(314+24)"> Signal Restoration and Gain </a> <ul> <li><a href="javascript:goto_page(314+24)"> 6.9.1 Signal Restoration and Gain 314 </a>
<li><a href="javascript:goto_page(317+24)"> Signal Restoration and Nonlinearity </a> <li><a href="javascript:goto_page(317+24)"> 6.9.2 Signal Restoration and Nonlinearity 317 </a>
<li><a href="javascript:goto_page(318+24)"> Buffer Characteristics and the Static Discipline </a> <li><a href="javascript:goto_page(318+24)"> 6.9.3 Buffer Characteristics and the Static Discipline 318 </a>
<li><a href="javascript:goto_page(319+24)"> Inverter Transfer Characteristics and the Static Discipline </a> <li><a href="javascript:goto_page(319+24)"> 6.9.4 Inverter Transfer Characteristics and the Static Discipline 319 </a>
</ul> <li><a href="javascript:goto_page(320+24)"> Power Consumption in Logic Gates </a> </ul> <li><a href="javascript:goto_page(320+24)"> 6.10 Power Consumption in Logic Gates 320 </a>
<li><a href="javascript:goto_page(321+24)"> Active Pullups </a> <li><a href="javascript:goto_page(321+24)"> 6.11 Active Pullups 321 </a>
<li><a href="javascript:goto_page(322+24)"> Summary </a> <li><a href="javascript:goto_page(322+24)"> 6.12 Summary 322 </a>
</ul> <li><a href="javascript:goto_page(331+24)"> The MOSFET Amplifier </a> </ul> <li><a href="javascript:goto_page(331+24)"> 7 The MOSFET Amplifier 331 </a>
<ul> <li><a href="javascript:goto_page(332+24)"> Signal Amplification </a> <ul> <li><a href="javascript:goto_page(332+24)"> 7.1 Signal Amplification 332 </a>
<li><a href="javascript:goto_page(332+24)"> Review of Dependent Sources </a> <li><a href="javascript:goto_page(332+24)"> 7.2 Review of Dependent Sources 332 </a>
<li><a href="javascript:goto_page(335+24)"> Actual MOSFET Characteristics</a> <li><a href="javascript:goto_page(335+24)"> 7.3 Actual MOSFET Characteristics 335 </a>
<li><a href="javascript:goto_page(340+24)"> The Switch Current Source (SCS) MOSFET Model </a> <li><a href="javascript:goto_page(340+24)"> 7.4 The Switch Current Source (SCS) MOSFET Model 340 </a>
<li><a href="javascript:goto_page(344+24)"> The MOSFET Amplifier </a> <li><a href="javascript:goto_page(344+24)"> 7.5 The MOSFET Amplifier 344 </a>
<ul> <li><a href="javascript:goto_page(349+24)"> Biasing the MOSFET Amplifier </a> <ul> <li><a href="javascript:goto_page(349+24)"> 7.5.1 Biasing the MOSFET Amplifier 349 </a>
<li><a href="javascript:goto_page(352+24)"> The Amplifier Abstraction and the Saturation Discipline </a> <li><a href="javascript:goto_page(352+24)"> 7.5.2 The Amplifier Abstraction and the Saturation Discipline 352 </a>
</ul> <li><a href="javascript:goto_page(353+24)"> Large Signal Analysis of the MOSFET Amplifier </a> </ul> <li><a href="javascript:goto_page(353+24)"> 7.6 Large Signal Analysis of the MOSFET Amplifier 353 </a>
<ul> <li><a href="javascript:goto_page(353+24)"> $v_IN}$ versus $v_OUT}$ in the Saturation Region </a> <ul> <li><a href="javascript:goto_page(353+24)"> 7.6.1 v_IN versus v_OUT in the Saturation Region 353 </a>
<li><a href="javascript:goto_page(356+24)"> Valid Input and Output Voltage Ranges </a> <li><a href="javascript:goto_page(356+24)"> 7.6.2 Valid Input and Output Voltage Ranges 356 </a>
<li><a href="javascript:goto_page(363+24)"> Alternative Method for Valid Input and Output Voltage Ranges </a>z <li><a href="javascript:goto_page(363+24)"> 7.6.3 Alternative Method for Valid Input and Output Voltage Ranges 363 </a>z
</ul> <li><a href="javascript:goto_page(385+24)"> Operating Point Selection </a> </ul> <li><a href="javascript:goto_page(385+24)"> 7.7 Operating Point Selection 385 </a>
<li><a href="javascript:goto_page(386+24)"> Switch Unified (SU) MOSFET Model $*$ </a> <li><a href="javascript:goto_page(386+24)"> 7.8 Switch Unified (SU) MOSFET Model * 386 </a>
<li><a href="javascript:goto_page(389+24)"> Summary </a> <li><a href="javascript:goto_page(389+24)"> 7.9 Summary 389 </a>
</ul> <li><a href="javascript:goto_page(405+24)"> The Small Signal Model </a> </ul> <li><a href="javascript:goto_page(405+24)"> 8 The Small Signal Model 405 </a>
<ul> <li><a href="javascript:goto_page(405+24)"> Overview of the Nonlinear MOSFET Amplifier </a> <ul> <li><a href="javascript:goto_page(405+24)"> 8.1 Overview of the Nonlinear MOSFET Amplifier 405 </a>
<li><a href="javascript:goto_page(405+24)"> The Small Signal Model </a> <li><a href="javascript:goto_page(405+24)"> 8.2 The Small Signal Model 405 </a>
<ul> <li><a href="javascript:goto_page(413+24)"> Small Signal Circuit Representation </a> <ul> <li><a href="javascript:goto_page(413+24)"> 8.2.1 Small Signal Circuit Representation 413 </a>
<li><a href="javascript:goto_page(418+24)"> Small Signal Circuit for the MOSFET Amplifier </a> <li><a href="javascript:goto_page(418+24)"> 8.3.2 Small Signal Circuit for the MOSFET Amplifier 418 </a>
<li><a href="javascript:goto_page(420+24)"> Selecting an Operating Point </a> <li><a href="javascript:goto_page(420+24)"> 8.2.3 Selecting an Operating Point 420 </a>
<li><a href="javascript:goto_page(423+24)"> Input and Output Resistance, Current and Power Gain </a> <li><a href="javascript:goto_page(423+24)"> 8.2.4 Input and Output Resistance, Current and Power Gain 423 </a>
</ul> <li><a href="javascript:goto_page(447+24)"> Summary </a> </ul> <li><a href="javascript:goto_page(447+24)"> 8.3 Summary 447 </a>
</ul> <li><a href="javascript:goto_page(457+24)"> Energy Storage Elements </a> </ul> <li><a href="javascript:goto_page(457+24)"> 9 Energy Storage Elements 457 </a>
<ul> <li><a href="javascript:goto_page(461+24)"> Constitutive Laws </a> <ul> <li><a href="javascript:goto_page(461+24)"> 1-Sep Constitutive Laws 461 </a>
<ul> <li><a href="javascript:goto_page(461+24)"> Capacitors </a> <ul> <li><a href="javascript:goto_page(461+24)"> 9.1.1 Capacitors 461 </a>
<li><a href="javascript:goto_page(466+24)"> Inductors </a> <li><a href="javascript:goto_page(466+24)"> 9.1.2 Inductors 466 </a>
</ul> <li><a href="javascript:goto_page(470+24)"> Series \& Parallel Connections </a> </ul> <li><a href="javascript:goto_page(470+24)"> 9.2 Series & Parallel Connections 470 </a>
<ul> <li><a href="javascript:goto_page(471+24)"> Capacitors </a> <ul> <li><a href="javascript:goto_page(471+24)"> 9.2.1 Capacitors 471 </a>
<li><a href="javascript:goto_page(472+24)"> Inductors </a> <li><a href="javascript:goto_page(472+24)"> 9.2.2 Inductors 472 </a>
</ul> <li><a href="javascript:goto_page(473+24)"> Special Examples </a> </ul> <li><a href="javascript:goto_page(473+24)"> 9.3 Special Examples 473 </a>
<ul> <li><a href="javascript:goto_page(473+24)"> MOSFET Gate Capacitance </a> <ul> <li><a href="javascript:goto_page(473+24)"> 9.3.1 MOSFET Gate Capacitance 473 </a>
<li><a href="javascript:goto_page(476+24)"> Wiring Loop Inductance </a> <li><a href="javascript:goto_page(476+24)"> 9.3.2 Wiring Loop Inductance 476 </a>
<li><a href="javascript:goto_page(477+24)"> IC Wiring Capacitance and Inductance </a> <li><a href="javascript:goto_page(477+24)"> 9.3.3 IC Wiring Capacitance and Inductance 477 </a>
<li><a href="javascript:goto_page(478+24)"> Transformers * </a> <li><a href="javascript:goto_page(478+24)"> 9.3.4 Transformers * 478 </a>
</ul> <li><a href="javascript:goto_page(480+24)"> Simple Circuit Examples </a> </ul> <li><a href="javascript:goto_page(480+24)"> 9.4 Simple Circuit Examples 480 </a>
<ul> <li><a href="javascript:goto_page(482+24)"> Sinusoidal Inputs * </a> <ul> <li><a href="javascript:goto_page(482+24)"> 9.4.1 Sinusoidal Inputs * 482 </a>
<li><a href="javascript:goto_page(482+24)"> Step Inputs </a> <li><a href="javascript:goto_page(482+24)"> 9.4.2 Step Inputs 482 </a>
<li><a href="javascript:goto_page(488+24)"> Impulse Inputs </a> <li><a href="javascript:goto_page(488+24)"> 9.4.3 Impulse Inputs 488 </a>
<li><a href="javascript:goto_page(489+24)"> Role Reversal$*$ </a> <li><a href="javascript:goto_page(489+24)"> 9.4.4 Role Reversal * 489 </a>
</ul> <li><a href="javascript:goto_page(489+24)"> Energy, Charge and Flux Conservation </a> </ul> <li><a href="javascript:goto_page(489+24)"> 9.5 Energy, Charge and Flux Conservation 489 </a>
<li><a href="javascript:goto_page(492+24)"> Summary </a> <li><a href="javascript:goto_page(492+24)"> 9.6 Summary 492 </a>
</ul> <li><a href="javascript:goto_page(503+24)"> First-order Transients </a> </ul> <li><a href="javascript:goto_page(503+24)"> 10 First-order Transients 503 </a>
<ul> <li><a href="javascript:goto_page(504+24)"> Analysis of RC Circuits </a> <ul> <li><a href="javascript:goto_page(504+24)"> 10.1.1 Analysis of RC Circuits 504 </a>
<ul> <li><a href="javascript:goto_page(504+24)"> Parallel RC Circuit, Step Input </a> <ul> <li><a href="javascript:goto_page(504+24)"> 10.1.2 Parallel RC Circuit, Step Input 504 </a>
<li><a href="javascript:goto_page(509+24)"> RC Discharge Transient </a> <li><a href="javascript:goto_page(509+24)"> 10.1.3 RC Discharge Transient 509 </a>
<li><a href="javascript:goto_page(511+24)"> Series RC Circuit, Step Input </a> <li><a href="javascript:goto_page(511+24)"> 10.1.4 Series RC Circuit, Step Input 511 </a>
<li><a href="javascript:goto_page(515+24)"> Series RC Circuit, Square Wave Input </a> <li><a href="javascript:goto_page(515+24)"> 10.2 Series RC Circuit, Square Wave Input 515 </a>
</ul> <li><a href="javascript:goto_page(517+24)"> Analysis of RL Circuits </a> </ul> <li><a href="javascript:goto_page(517+24)"> 10.2.1 Analysis of RL Circuits 517 </a>
<ul> <li><a href="javascript:goto_page(517+24)"> Series RL Circuit, Step Input </a> <ul> <li><a href="javascript:goto_page(517+24)"> 10.3 Series RL Circuit, Step Input 517 </a>
</ul> <li><a href="javascript:goto_page(520+24)"> Intuitive Analysis </a> </ul> <li><a href="javascript:goto_page(520+24)"> 10.4 Intuitive Analysis 520 </a>
<li><a href="javascript:goto_page(525+24)"> Propagation Delay and the Digital Abstraction </a> <li><a href="javascript:goto_page(525+24)"> 10.4.1 Propagation Delay and the Digital Abstraction 525 </a>
<ul> <li><a href="javascript:goto_page(527+24)"> Definitions </a> <ul> <li><a href="javascript:goto_page(527+24)"> 10.4.2 Definitions 527 </a>
<li><a href="javascript:goto_page(529+24)"> Computing $t_pd}$ from the SRC MOSFET Model </a> <li><a href="javascript:goto_page(529+24)"> 10.5 Computing t_pd from the SRC MOSFET Model 529 </a>
</ul> <li><a href="javascript:goto_page(538+24)"> State and State Variables * </a> </ul> <li><a href="javascript:goto_page(538+24)"> 10.5.1 State and State Variables * 538 </a>
<ul> <li><a href="javascript:goto_page(538+24)"> The Concept of State </a> <ul> <li><a href="javascript:goto_page(538+24)"> 10.5.2 The Concept of State 538 </a>
<li><a href="javascript:goto_page(540+24)"> Computer Analysis using the State Equation </a> <li><a href="javascript:goto_page(540+24)"> 10.5.3 Computer Analysis using the State Equation 540 </a>
<li><a href="javascript:goto_page(541+24)"> Zero-input and Zero-state Response </a> <li><a href="javascript:goto_page(541+24)"> 10.5.4 Zero-input and Zero-state Response 541 </a>
<li><a href="javascript:goto_page(544+24)"> Solution by Integrating Factors* </a> <li><a href="javascript:goto_page(544+24)"> 10.6 Solution by Integrating Factors* 544 </a>
</ul> <li><a href="javascript:goto_page(545+24)"> Additional Examples </a> </ul> <li><a href="javascript:goto_page(545+24)"> 10.6.1 Additional Examples 545 </a>
<ul> <li><a href="javascript:goto_page(545+24)"> Effect of Wire Inductance in Digital Circuits </a> <ul> <li><a href="javascript:goto_page(545+24)"> 10.6.2 Effect of Wire Inductance in Digital Circuits 545 </a>
<li><a href="javascript:goto_page(545+24)"> Ramp Inputs and Linearity </a> <li><a href="javascript:goto_page(545+24)"> 10.6.3 Ramp Inputs and Linearity 545 </a>
<li><a href="javascript:goto_page(550+24)"> Response of an RC Circuit to Short Pulses and the Impulse Response </a> <li><a href="javascript:goto_page(550+24)"> 10.6.4 Response of an RC Circuit to Short Pulses and the Impulse Response 550 </a>
<li><a href="javascript:goto_page(553+24)"> Intuitive Method for the Impulse Response </a> <li><a href="javascript:goto_page(553+24)"> 10.6.5 Intuitive Method for the Impulse Response 553 </a>
<li><a href="javascript:goto_page(554+24)"> Clock Signals and Clock Fanout </a> <li><a href="javascript:goto_page(554+24)"> 10.6.6 Clock Signals and Clock Fanout 554 </a>
<li><a href="javascript:goto_page(558+24)"> RC Response to Decaying Exponential * </a> <li><a href="javascript:goto_page(558+24)"> 10.6.7 RC Response to Decaying Exponential * 558 </a>
<li><a href="javascript:goto_page(558+24)"> Series RL Circuit with Sinewave Input </a> <li><a href="javascript:goto_page(558+24)"> 10.7 Series RL Circuit with Sinewave Input 558 </a>
</ul> <li><a href="javascript:goto_page(561+24)"> Digital Memory </a> </ul> <li><a href="javascript:goto_page(561+24)"> 10.7.1 Digital Memory 561 </a>
<ul> <li><a href="javascript:goto_page(561+24)"> The Concept of Digital State </a> <ul> <li><a href="javascript:goto_page(561+24)"> 10.7.2 The Concept of Digital State 561 </a>
<li><a href="javascript:goto_page(562+24)"> An Abstract Digital Memory Element </a> <li><a href="javascript:goto_page(562+24)"> 10.7.3 An Abstract Digital Memory Element 562 </a>
<li><a href="javascript:goto_page(563+24)"> Design of the Digital Memory Element </a> <li><a href="javascript:goto_page(563+24)"> 10.7.4 Design of the Digital Memory Element 563 </a>
<li><a href="javascript:goto_page(567+24)"> A Static Memory Element </a> <li><a href="javascript:goto_page(567+24)"> 10.7.5 A Static Memory Element 567 </a>
</ul> <li><a href="javascript:goto_page(568+24)"> Summary </a> </ul> <li><a href="javascript:goto_page(568+24)"> 10.8 Summary 568 </a>
</ul> <li><a href="javascript:goto_page(595+24)"> Energy and Power in Digital Circuits </a> </ul> <li><a href="javascript:goto_page(595+24)"> 11 Energy and Power in Digital Circuits 595 </a>
<ul> <li><a href="javascript:goto_page(595+24)"> Power and Energy Relations for a Simple RC Circuit </a> <ul> <li><a href="javascript:goto_page(595+24)"> 11.1 Power and Energy Relations for a Simple RC Circuit 595 </a>
<li><a href="javascript:goto_page(597+24)"> Average Power in an RC Circuit </a> <li><a href="javascript:goto_page(597+24)"> 11.2 Average Power in an RC Circuit 597 </a>
<ul> <li><a href="javascript:goto_page(599+24)"> Energy Dissipated during Interval $T_1$ </a> <ul> <li><a href="javascript:goto_page(599+24)"> 11.2.1 Energy Dissipated during Interval T_1 599 </a>
<li><a href="javascript:goto_page(601+24)"> Energy Dissipated during Interval $T_2$ </a> <li><a href="javascript:goto_page(601+24)"> 11.2.2 Energy Dissipated during Interval T_2 601 </a>
<li><a href="javascript:goto_page(603+24)"> Total Energy Dissipated </a> <li><a href="javascript:goto_page(603+24)"> 11.2.3 Total Energy Dissipated 603 </a>
</ul> <li><a href="javascript:goto_page(604+24)"> Power Dissipation in Logic Gates </a> </ul> <li><a href="javascript:goto_page(604+24)"> 11.3 Power Dissipation in Logic Gates 604 </a>
<ul> <li><a href="javascript:goto_page(604+24)"> Static Power Dissipation </a> <ul> <li><a href="javascript:goto_page(604+24)"> 11.3.1 Static Power Dissipation 604 </a>
<li><a href="javascript:goto_page(605+24)"> Total Power Dissipation </a> <li><a href="javascript:goto_page(605+24)"> 11.3.2 Total Power Dissipation 605 </a>
</ul> <li><a href="javascript:goto_page(611+24)"> NMOS Logic </a> </ul> <li><a href="javascript:goto_page(611+24)"> 11.4 NMOS Logic 611 </a>
<li><a href="javascript:goto_page(611+24)"> CMOS Logic </a> <li><a href="javascript:goto_page(611+24)"> 11.5 CMOS Logic 611 </a>
<ul> <li><a href="javascript:goto_page(616+24)"> CMOS Logic Gate Design </a> <ul> <li><a href="javascript:goto_page(616+24)"> 11.5.1 CMOS Logic Gate Design 616 </a>
</ul> <li><a href="javascript:goto_page(618+24)"> Summary </a> </ul> <li><a href="javascript:goto_page(618+24)"> 11.6 Summary 618 </a>
</ul> <li><a href="javascript:goto_page(625+24)"> Transients in Second Order Circuits </a> </ul> <li><a href="javascript:goto_page(625+24)"> 12 Transients in Second Order Circuits 625 </a>
<ul> <li><a href="javascript:goto_page(627+24)"> Undriven LC Circuit </a> <ul> <li><a href="javascript:goto_page(627+24)"> 12.1 Undriven LC Circuit 627 </a>
<li><a href="javascript:goto_page(640+24)"> Undriven, Series RLC Circuit </a> <li><a href="javascript:goto_page(640+24)"> 12.2 Undriven, Series RLC Circuit 640 </a>
<ul> <li><a href="javascript:goto_page(644+24)"> Under-Damped Dynamics </a> <ul> <li><a href="javascript:goto_page(644+24)"> 12.2.1 Under-Damped Dynamics 644 </a>
<li><a href="javascript:goto_page(648+24)"> Over-Damped Dynamics </a> <li><a href="javascript:goto_page(648+24)"> 12.2.2 Over-Damped Dynamics 648 </a>
<li><a href="javascript:goto_page(649+24)"> Critically-Damped Dynamics </a> <li><a href="javascript:goto_page(649+24)"> 12.2.3 Critically-Damped Dynamics 649 </a>
</ul> <li><a href="javascript:goto_page(651+24)"> Stored Energy in Transient, Series RLC Circuit </a> </ul> <li><a href="javascript:goto_page(651+24)"> 12.3 Stored Energy in Transient, Series RLC Circuit 651 </a>
<li><a href="javascript:goto_page(654+24)"> Undriven, Parallel RLC Circuit * </a> <li><a href="javascript:goto_page(654+24)"> 12.4 Undriven, Parallel RLC Circuit * 654 </a>
<ul> <li><a href="javascript:goto_page(654+24)"> Under-Damped Dynamics </a> <ul> <li><a href="javascript:goto_page(654+24)"> 12.4.1 Under-Damped Dynamics 654 </a>
<li><a href="javascript:goto_page(654+24)"> Over-Damped Dynamics </a> <li><a href="javascript:goto_page(654+24)"> 12.4.2 Over-Damped Dynamics 654 </a>
<li><a href="javascript:goto_page(654+24)"> Critically-Damped Dynamics </a> <li><a href="javascript:goto_page(654+24)"> 12.4.3 Critically-Damped Dynamics 654 </a>
</ul> <li><a href="javascript:goto_page(654+24)"> Driven, Series RLC Circuit </a> </ul> <li><a href="javascript:goto_page(654+24)"> 12.5 Driven, Series RLC Circuit 654 </a>
<ul> <li><a href="javascript:goto_page(657+24)"> Step Response </a> <ul> <li><a href="javascript:goto_page(657+24)"> 12.5.1 Step Response 657 </a>
<li><a href="javascript:goto_page(661+24)"> Impulse Response * </a> <li><a href="javascript:goto_page(661+24)"> 12.5.2 Impulse Response * 661 </a>
</ul> <li><a href="javascript:goto_page(678+24)"> Driven, Parallel RLC Circuit * </a> </ul> <li><a href="javascript:goto_page(678+24)"> 12.6 Driven, Parallel RLC Circuit * 678 </a>
<ul> <li><a href="javascript:goto_page(678+24)"> Step Response </a> <ul> <li><a href="javascript:goto_page(678+24)"> 12.6.1 Step Response 678 </a>
<li><a href="javascript:goto_page(678+24)"> Impulse Response </a> <li><a href="javascript:goto_page(678+24)"> 12.6.2 Impulse Response 678 </a>
</ul> <li><a href="javascript:goto_page(678+24)"> Intuitive Analysis of Second-Order Circuits </a> </ul> <li><a href="javascript:goto_page(678+24)"> 12.7 Intuitive Analysis of Second-Order Circuits 678 </a>
<li><a href="javascript:goto_page(684+24)"> Two-Capacitor Or Two-Inductor Circuits </a> <li><a href="javascript:goto_page(684+24)"> 12.8 Two-Capacitor Or Two-Inductor Circuits 684 </a>
<li><a href="javascript:goto_page(689+24)"> State-Variable Method * </a> <li><a href="javascript:goto_page(689+24)"> 12.9 State-Variable Method * 689 </a>
<li><a href="javascript:goto_page(691+24)"> State-Space Analysis * </a> <li><a href="javascript:goto_page(691+24)"> 12.10 State-Space Analysis * 691 </a>
<ul> <li><a href="javascript:goto_page(691+24)"> Numerical Solution * </a> <ul> <li><a href="javascript:goto_page(691+24)"> 12.10.1 Numerical Solution * 691 </a>
</ul> <li><a href="javascript:goto_page(691+24)"> Higher-Order Circuits* </a> </ul> <li><a href="javascript:goto_page(691+24)"> 12.11 Higher-Order Circuits* 691 </a>
<li><a href="javascript:goto_page(692+24)"> Summary </a> <li><a href="javascript:goto_page(692+24)"> 12.12 Summary 692 </a>
</ul> <li><a href="javascript:goto_page(703+24)"> Sinusoidal Steady State </a> </ul> <li><a href="javascript:goto_page(703+24)"> 13 Sinusoidal Steady State 703 </a>
<ul> <li><a href="javascript:goto_page(703+24)"> Introduction </a> <ul> <li><a href="javascript:goto_page(703+24)"> 13.1 Introduction 703 </a>
<li><a href="javascript:goto_page(706+24)"> Analysis using Complex Exponential Drive </a> <li><a href="javascript:goto_page(706+24)"> 13.2 Analysis using Complex Exponential Drive 706 </a>
<ul> <li><a href="javascript:goto_page(706+24)"> Homogeneous Solution </a> <ul> <li><a href="javascript:goto_page(706+24)"> 13.2.1 Homogeneous Solution 706 </a>
<li><a href="javascript:goto_page(707+24)"> Particular Solution </a> <li><a href="javascript:goto_page(707+24)"> 13.2.2 Particular Solution 707 </a>
<li><a href="javascript:goto_page(710+24)"> Complete Solution </a> <li><a href="javascript:goto_page(710+24)"> 13.2.3 Complete Solution 710 </a>
<li><a href="javascript:goto_page(710+24)"> Sinusoidal Steady State Response </a> <li><a href="javascript:goto_page(710+24)"> 13.2.4 Sinusoidal Steady State Response 710 </a>
</ul> <li><a href="javascript:goto_page(712+24)"> The Boxes: Impedance </a> </ul> <li><a href="javascript:goto_page(712+24)"> 13.3 The Boxes: Impedance 712 </a>
<ul> <li><a href="javascript:goto_page(718+24)"> Example: Series RL Circuit </a> <ul> <li><a href="javascript:goto_page(718+24)"> 13.3.1 Example: Series RL Circuit 718 </a>
<li><a href="javascript:goto_page(722+24)"> Example: Another RC Circuit </a> <li><a href="javascript:goto_page(722+24)"> 13.3.2 Example: Another RC Circuit 722 </a>
<li><a href="javascript:goto_page(724+24)"> Example: RC Circuit with Two Capacitors </a> <li><a href="javascript:goto_page(724+24)"> 13.3.3 Example: RC Circuit with Two Capacitors 724 </a>
<li><a href="javascript:goto_page(729+24)"> Example: Analysis of Small Signal Amplifier with Capacitive Load </a> <li><a href="javascript:goto_page(729+24)"> 13.3.4 Example: Analysis of Small Signal Amplifier with Capacitive Load 729 </a>
</ul> <li><a href="javascript:goto_page(731+24)"> Frequency Response: Magnitude/Phase vs. Frequency </a> </ul> <li><a href="javascript:goto_page(731+24)"> 13.4 Frequency Response: Magnitude/Phase vs. Frequency 731 </a>
<ul> <li><a href="javascript:goto_page(732+24)"> Frequency Response of Capacitors, Inductor </a> <ul> <li><a href="javascript:goto_page(732+24)"> 13.4.1 Frequency Response of Capacitors, Inductor 732 </a>
<li><a href="javascript:goto_page(737+24)"> Intuitively Sketching th </a> <li><a href="javascript:goto_page(737+24)"> 13.4.2 Intuitively Sketching th 737 </a>
<li><a href="javascript:goto_page(741+24)"> The Bode Plot: Sketching the Frequency Response of General Functions * </a> <li><a href="javascript:goto_page(741+24)"> 13.4.3 The Bode Plot: Sketching the Frequency Response of General Functions * 741 </a>
</ul> <li><a href="javascript:goto_page(742+24)"> Filters </a> </ul> <li><a href="javascript:goto_page(742+24)"> 13.5 Filters 742 </a>
<ul> <li><a href="javascript:goto_page(744+24)"> Filter Design Example: Crossover Network </a> <ul> <li><a href="javascript:goto_page(744+24)"> 13.5.1 Filter Design Example: Crossover Network 744 </a>
<li><a href="javascript:goto_page(746+24)"> Decoupling Amplifier Stages </a> <li><a href="javascript:goto_page(746+24)"> 13.5.2 Decoupling Amplifier Stages 746 </a>
</ul> <li><a href="javascript:goto_page(751+24)"> Time Domain </a> </ul> <li><a href="javascript:goto_page(751+24)"> 13.6 Time Domain 751 </a>
<ul> <li><a href="javascript:goto_page(751+24)"> Frequency Domain Analysis </a> <ul> <li><a href="javascript:goto_page(751+24)"> 13.6.1 Frequency Domain Analysis 751 </a>
<li><a href="javascript:goto_page(754+24)"> Time Domain Analysis </a> <li><a href="javascript:goto_page(754+24)"> 13.6.2 Time Domain Analysis 754 </a>
<li><a href="javascript:goto_page(756+24)"> Comparing Time Domain and Frequency Domain Analyses </a> <li><a href="javascript:goto_page(756+24)"> 13.6.3 Comparing Time Domain and Frequency Domain Analyses 756 </a>
</ul> <li><a href="javascript:goto_page(757+24)"> Power and Energy in an Impedance </a> </ul> <li><a href="javascript:goto_page(757+24)"> 13.7 Power and Energy in an Impedance 757 </a>
<ul> <li><a href="javascript:goto_page(758+24)"> Arbitrary Impedance </a> <ul> <li><a href="javascript:goto_page(758+24)"> 13.7.1 Arbitrary Impedance 758 </a>
<li><a href="javascript:goto_page(760+24)"> Pure Resistance </a> <li><a href="javascript:goto_page(760+24)"> 13.7.2 Pure Resistance 760 </a>
<li><a href="javascript:goto_page(761+24)"> Pure Reactance </a> <li><a href="javascript:goto_page(761+24)"> 13.7.3 Pure Reactance 761 </a>
<li><a href="javascript:goto_page(763+24)"> Example: Power in an RC Circuit </a> <li><a href="javascript:goto_page(763+24)"> 13.7.4 Example: Power in an RC Circuit 763 </a>
</ul> <li><a href="javascript:goto_page(765+24)"> Summary </a> </ul> <li><a href="javascript:goto_page(765+24)"> 13.8 Summary 765 </a>
</ul> <li><a href="javascript:goto_page(777+24)"> Sinusoidal Steady State: Resonance </a> </ul> <li><a href="javascript:goto_page(777+24)"> 14 Sinusoidal Steady State: Resonance 777 </a>
<ul> <li><a href="javascript:goto_page(777+24)"> Parallel RLC, Sinusoidal Response </a> <ul> <li><a href="javascript:goto_page(777+24)"> 14.1 Parallel RLC, Sinusoidal Response 777 </a>
<ul> <li><a href="javascript:goto_page(778+24)"> Homogeneous Solution </a> <ul> <li><a href="javascript:goto_page(778+24)"> 14.1.1 Homogeneous Solution 778 </a>
<li><a href="javascript:goto_page(780+24)"> Particular Solution </a> <li><a href="javascript:goto_page(780+24)"> 14.1.2 Particular Solution 780 </a>
<li><a href="javascript:goto_page(781+24)"> Total Solution for the Parallel RLC Circuit </a> <li><a href="javascript:goto_page(781+24)"> 14.1.3 Total Solution for the Parallel RLC Circuit 781 </a>
</ul> <li><a href="javascript:goto_page(783+24)"> Frequency Response for Resonant Systems </a> </ul> <li><a href="javascript:goto_page(783+24)"> 14.2 Frequency Response for Resonant Systems 783 </a>
<ul> <li><a href="javascript:goto_page(792+24)"> The Resonant Region of the Frequency Response </a> <ul> <li><a href="javascript:goto_page(792+24)"> 14.2.1 The Resonant Region of the Frequency Response 792 </a>
</ul> <li><a href="javascript:goto_page(801+24)"> Series RLC </a> </ul> <li><a href="javascript:goto_page(801+24)"> 14.3 Series RLC 801 </a>
<li><a href="javascript:goto_page(808+24)"> The Bode Plot for Resonant Functions * </a> <li><a href="javascript:goto_page(808+24)"> 14.4 The Bode Plot for Resonant Functions * 808 </a>
<li><a href="javascript:goto_page(808+24)"> Filter Examples </a> <li><a href="javascript:goto_page(808+24)"> 14.5 Filter Examples 808 </a>
<ul> <li><a href="javascript:goto_page(809+24)"> Bandpass Filter </a> <ul> <li><a href="javascript:goto_page(809+24)"> 14.5.1 Bandpass Filter 809 </a>
<li><a href="javascript:goto_page(810+24)"> Lowpass Filter </a> <li><a href="javascript:goto_page(810+24)"> 14.5.2 Lowpass Filter 810 </a>
<li><a href="javascript:goto_page(812+24)"> Highpass Filter </a> <li><a href="javascript:goto_page(812+24)"> 14.5.3 Highpass Filter 812 </a>
<li><a href="javascript:goto_page(815+24)"> Notch Filter </a> <li><a href="javascript:goto_page(815+24)"> 14.5.4 Notch Filter 815 </a>
</ul> <li><a href="javascript:goto_page(816+24)"> Stored Energy in a Resonant Circuit </a> </ul> <li><a href="javascript:goto_page(816+24)"> 14.6 Stored Energy in a Resonant Circuit 816 </a>
<li><a href="javascript:goto_page(821+24)"> Summary </a> <li><a href="javascript:goto_page(821+24)"> 14.7 Summary 821 </a>
</ul> <li><a href="javascript:goto_page(837+24)"> The Operational Amplifier Abstraction </a> </ul> <li><a href="javascript:goto_page(837+24)"> 15 The Operational Amplifier Abstraction 837 </a>
<ul> <li><a href="javascript:goto_page(837+24)"> Introduction </a> <ul> <li><a href="javascript:goto_page(837+24)"> 15.1 Introduction 837 </a>
<ul> <li><a href="javascript:goto_page(838+24)"> Historical Perspective </a> <ul> <li><a href="javascript:goto_page(838+24)"> 15.1.1 Historical Perspective 838 </a>
</ul> <li><a href="javascript:goto_page(839+24)"> Device Properties of the Operational Amplifier </a> </ul> <li><a href="javascript:goto_page(839+24)"> 15.2 Device Properties of the Operational Amplifier 839 </a>
<ul> <li><a href="javascript:goto_page(839+24)"> The Op Amp Model </a> <ul> <li><a href="javascript:goto_page(839+24)"> 15.2 The Op Amp Model 839 </a>
</ul> <li><a href="javascript:goto_page(842+24)"> Simple Op Amp Circuits </a> </ul> <li><a href="javascript:goto_page(842+24)"> 15.3 Simple Op Amp Circuits 842 </a>
<ul> <li><a href="javascript:goto_page(842+24)"> The Non-inverting Op Amp </a> <ul> <li><a href="javascript:goto_page(842+24)"> 15.3.1 The Non-inverting Op Amp 842 </a>
<li><a href="javascript:goto_page(844+24)"> A Second Example: The Inverting Connection </a> <li><a href="javascript:goto_page(844+24)"> 15.3.2 A Second Example: The Inverting Connection 844 </a>
<li><a href="javascript:goto_page(846+24)"> Sensitivity </a> <li><a href="javascript:goto_page(846+24)"> 15.3.3 Sensitivity 846 </a>
<li><a href="javascript:goto_page(847+24)"> A Special Case: The Voltage Follower </a> <li><a href="javascript:goto_page(847+24)"> 15.3.4 A Special Case: The Voltage Follower 847 </a>
<li><a href="javascript:goto_page(848+24)"> An Additional Constraint: $v^+ - v^- \simeq 0$ </a> <li><a href="javascript:goto_page(848+24)"> 15.3.5 An Additional Constraint: v+ - v- ~ 0 848 </a>
</ul> <li><a href="javascript:goto_page(849+24)"> Input and Output Resistances </a> </ul> <li><a href="javascript:goto_page(849+24)"> 15.4 Input and Output Resistances 849 </a>
<ul> <li><a href="javascript:goto_page(849+24)"> Output Resistance, Inverting Op Amp </a> <ul> <li><a href="javascript:goto_page(849+24)"> 15.4.1 Output Resistance, Inverting Op Amp 849 </a>
<li><a href="javascript:goto_page(851+24)"> Input Resistance, Inverting Connection </a> <li><a href="javascript:goto_page(851+24)"> 15.4.2 Input Resistance, Inverting Connection 851 </a>
<li><a href="javascript:goto_page(853+24)"> Input and Output R for Non-Inverting Op Amp </a> <li><a href="javascript:goto_page(853+24)"> 15.4.3 Input and Output R for Non-Inverting Op Amp 853 </a>
<li><a href="javascript:goto_page(855+24)"> Generalization on Input Resistance * </a> <li><a href="javascript:goto_page(855+24)"> 15.4.4 Generalization on Input Resistance * 855 </a>
<li><a href="javascript:goto_page(855+24)"> Example: Op Amp Current Source </a> <li><a href="javascript:goto_page(855+24)"> 15.4.5 Example: Op Amp Current Source 855 </a>
</ul> <li><a href="javascript:goto_page(857+24)"> Additional Examples </a> </ul> <li><a href="javascript:goto_page(857+24)"> 15.5 Additional Examples 857 </a>
<ul> <li><a href="javascript:goto_page(858+24)"> Adder </a> <ul> <li><a href="javascript:goto_page(858+24)"> 15.5.1 Adder 858 </a>
<li><a href="javascript:goto_page(858+24)"> Subtracter </a> <li><a href="javascript:goto_page(858+24)"> 15.5.2 Subtracter 858 </a>
</ul> <li><a href="javascript:goto_page(859+24)"> Op Amp RC Circuits </a> </ul> <li><a href="javascript:goto_page(859+24)"> 15.6 Op Amp RC Circuits 859 </a>
<ul> <li><a href="javascript:goto_page(859+24)"> Op Amp Integrator </a> <ul> <li><a href="javascript:goto_page(859+24)"> 15.6.1 Op Amp Integrator 859 </a>
<li><a href="javascript:goto_page(862+24)"> Op Amp Differentiator </a> <li><a href="javascript:goto_page(862+24)"> 15.6.2 Op Amp Differentiator 862 </a>
<li><a href="javascript:goto_page(863+24)"> An RC Active Filter </a> <li><a href="javascript:goto_page(863+24)"> 15.6.3 An RC Active Filter 863 </a>
<li><a href="javascript:goto_page(865+24)"> The RC Active Filter -- Impedance Analysis </a> <li><a href="javascript:goto_page(865+24)"> 15.6.4 The RC Active Filter -- Impedance Analysis 865 </a>
<li><a href="javascript:goto_page(866+24)"> Sallen-Key Filter </a> <li><a href="javascript:goto_page(866+24)"> 15.6.5 Sallen-Key Filter 866 </a>
</ul> <li><a href="javascript:goto_page(866+24)"> Op Amp in Saturation </a> </ul> <li><a href="javascript:goto_page(866+24)"> 15.7 Op Amp in Saturation 866 </a>
<ul> <li><a href="javascript:goto_page(867+24)"> Op Amp Integrator in Saturation </a> <ul> <li><a href="javascript:goto_page(867+24)"> 15.7.1 Op Amp Integrator in Saturation 867 </a>
</ul> <li><a href="javascript:goto_page(869+24)"> Positive Feedback </a> </ul> <li><a href="javascript:goto_page(869+24)"> 15.8 Positive Feedback 869 </a>
<ul> <li><a href="javascript:goto_page(869+24)"> RC Oscillator </a> <ul> <li><a href="javascript:goto_page(869+24)"> 15.8.1 RC Oscillator 869 </a>
</ul> <li><a href="javascript:goto_page(872+24)"> Two-ports* </a> </ul> <li><a href="javascript:goto_page(872+24)"> 15.9 Two-ports* 872 </a>
<li><a href="javascript:goto_page(873+24)"> Summary </a> <li><a href="javascript:goto_page(873+24)"> 15.10 Summary 873 </a>
</ul> <li><a href="javascript:goto_page(905+24)"> Diodes </a> </ul> <li><a href="javascript:goto_page(905+24)"> 16 Diodes 905 </a>
<ul> <li><a href="javascript:goto_page(905+24)"> Introduction </a> <ul> <li><a href="javascript:goto_page(905+24)"> 16.1 Introduction 905 </a>
<li><a href="javascript:goto_page(905+24)"> Semiconductor Diode Characteristics </a> <li><a href="javascript:goto_page(905+24)"> 16.2 Semiconductor Diode Characteristics 905 </a>
<li><a href="javascript:goto_page(908+24)"> Analysis of Diode Circuits </a> <li><a href="javascript:goto_page(908+24)"> 16.3 Analysis of Diode Circuits 908 </a>
<ul> <li><a href="javascript:goto_page(908+24)"> Method of Assumed States </a> <ul> <li><a href="javascript:goto_page(908+24)"> 16.3.1 Method of Assumed States 908 </a>
</ul> <li><a href="javascript:goto_page(912+24)"> Nonlinear Analysis with RL and RC </a> </ul> <li><a href="javascript:goto_page(912+24)"> 16.4 Nonlinear Analysis with RL and RC 912 </a>
<ul> <li><a href="javascript:goto_page(912+24)"> Peak Detector</a> <ul> <li><a href="javascript:goto_page(912+24)"> 16.4.1 Peak Detector 912 </a>
<li><a href="javascript:goto_page(915+24)"> Example: Clamping Circuit </a> <li><a href="javascript:goto_page(915+24)"> 16.4.2 Example: Clamping Circuit 915 </a>
<li><a href="javascript:goto_page(918+24)"> A Switched Power Supply Using a Diode </a> <li><a href="javascript:goto_page(918+24)"> 16.4.3 A Switched Power Supply Using a Diode 918 </a>
</ul> <li><a href="javascript:goto_page(918+24)"> Additional Examples </a> </ul> <li><a href="javascript:goto_page(918+24)"> 16.5 Additional Examples 918 </a>
<ul> <li><a href="javascript:goto_page(918+24)"> Piecewise Linear Example: Clipping Circuit </a> <ul> <li><a href="javascript:goto_page(918+24)"> 16.5.1 Piecewise Linear Example: Clipping Circuit 918 </a>
<li><a href="javascript:goto_page(918+24)"> Exponentiation Circuit </a> <li><a href="javascript:goto_page(918+24)"> 16.5.2 Exponentiation Circuit 918 </a>
<li><a href="javascript:goto_page(918+24)"> Piecewise Linear Example: Limiter </a> <li><a href="javascript:goto_page(918+24)"> 16.5.3 Piecewise Linear Example: Limiter 918 </a>
<li><a href="javascript:goto_page(918+24)"> Example: Full-Wave Diode Bridge </a> <li><a href="javascript:goto_page(918+24)"> 16.5.4 Example: Full-Wave Diode Bridge 918 </a>
<li><a href="javascript:goto_page(918+24)"> Incremental Example: Zener Diode Regulator </a> <li><a href="javascript:goto_page(918+24)"> 16.5.5 Incremental Example: Zener Diode Regulator 918 </a>
<li><a href="javascript:goto_page(918+24)"> Incremental Example: Diode Attenuator </a> <li><a href="javascript:goto_page(918+24)"> 16.5.6 Incremental Example: Diode Attenuator 918 </a>
</ul> <li><a href="javascript:goto_page(919+24)"> Summary </a> </ul> <li><a href="javascript:goto_page(919+24)"> 16.6 Summary 919 </a>
</ul> <li><a href="javascript:goto_page(927+24)"> Maxwell's Equations and the LMD </a> </ul> <li><a href="javascript:goto_page(927+24)"> A1 Maxwell's Equations and the LMD 927 </a>
<ul> <li><a href="javascript:goto_page(927+24)"> The Lumped Matter Discipline </a> <ul> <li><a href="javascript:goto_page(927+24)"> A.1 The Lumped Matter Discipline 927 </a>
<ul> <li><a href="javascript:goto_page(927+24)"> The First Constraint of the Lumped Matter Discipline </a> <ul> <li><a href="javascript:goto_page(927+24)"> A.1.1 The First Constraint of the Lumped Matter Discipline 927 </a>
<li><a href="javascript:goto_page(930+24)"> The Second Constraint of the Lumped Matter Discipline </a> <li><a href="javascript:goto_page(930+24)"> A.1.2 The Second Constraint of the Lumped Matter Discipline 930 </a>
<li><a href="javascript:goto_page(932+24)"> The Third Constraint of the Lumped Matter Discipline </a> <li><a href="javascript:goto_page(932+24)"> A.1.3 The Third Constraint of the Lumped Matter Discipline 932 </a>
<li><a href="javascript:goto_page(933+24)"> The Lumped Matter Discipline Applied to Circuits </a> <li><a href="javascript:goto_page(933+24)"> A.1.4 The Lumped Matter Discipline Applied to Circuits 933 </a>
</ul> <li><a href="javascript:goto_page(934+24)"> Deriving Kirchhoff's Laws </a> </ul> <li><a href="javascript:goto_page(934+24)"> A.2 Deriving Kirchhoff's Laws 934 </a>
<li><a href="javascript:goto_page(936+24)"> Deriving the Resistance of a Piece of Material </a> <li><a href="javascript:goto_page(936+24)"> A.3 Deriving the Resistance of a Piece of Material 936 </a>
</ul> <li><a href="javascript:goto_page(941+24)"> Trigonometric Functions \& Identities </a> </ul> <li><a href="javascript:goto_page(941+24)"> B Trigonometric Functions & Identities 941 </a>
<ul> <li><a href="javascript:goto_page(941+24)"> Negative Arguments </a> <ul> <li><a href="javascript:goto_page(941+24)"> B.1 Negative Arguments 941 </a>
<li><a href="javascript:goto_page(942+24)"> Phase-Shifted Arguments </a> <li><a href="javascript:goto_page(942+24)"> B.2 Phase-Shifted Arguments 942 </a>
<li><a href="javascript:goto_page(942+24)"> Sum and Difference Arguments </a> <li><a href="javascript:goto_page(942+24)"> B.3 Sum and Difference Arguments 942 </a>
<li><a href="javascript:goto_page(943+24)"> Products </a> <li><a href="javascript:goto_page(943+24)"> B.4 Products 943 </a>
<li><a href="javascript:goto_page(943+24)"> Half-Angle \& Twice-Angle Arguments </a> <li><a href="javascript:goto_page(943+24)"> B.5 Half-Angle & Twice-Angle Arguments 943 </a>
<li><a href="javascript:goto_page(943+24)"> Squares </a> <li><a href="javascript:goto_page(943+24)"> B.6 Squares 943 </a>
<li><a href="javascript:goto_page(943+24)"> Miscellaneous </a> <li><a href="javascript:goto_page(943+24)"> B.7 Miscellaneous 943 </a>
<li><a href="javascript:goto_page(944+24)"> Taylor Series Expansions </a> <li><a href="javascript:goto_page(944+24)"> B.8 Taylor Series Expansions 944 </a>
<li><a href="javascript:goto_page(944+24)"> Relations to $e^j\theta}$ </a> <li><a href="javascript:goto_page(944+24)"> B.9 Relations to e^j\theta 944 </a>
</ul> <li><a href="javascript:goto_page(947+24)"> Complex Numbers </a> </ul> <li><a href="javascript:goto_page(947+24)"> C Complex Numbers 947 </a>
<ul> <li><a href="javascript:goto_page(947+24)"> Magnitude and Phase</a> <ul> <li><a href="javascript:goto_page(947+24)"> C.1 Magnitude and Phase 947 </a>
<li><a href="javascript:goto_page(948+24)"> Polar Representation </a> <li><a href="javascript:goto_page(948+24)"> C.2 Polar Representation 948 </a>
<li><a href="javascript:goto_page(949+24)"> Addition and Subtraction </a> <li><a href="javascript:goto_page(949+24)"> C.3 Addition and Subtraction 949 </a>
<li><a href="javascript:goto_page(949+24)"> Multiplication and Division </a> <li><a href="javascript:goto_page(949+24)"> C.4 Multiplication and Division 949 </a>
<li><a href="javascript:goto_page(950+24)"> Complex Conjugate </a> <li><a href="javascript:goto_page(950+24)"> C.5 Complex Conjugate 950 </a>
<li><a href="javascript:goto_page(951+24)"> Properties of $e^j\theta}$ </a> <li><a href="javascript:goto_page(951+24)"> C.6 Properties of e^j\theta 951 </a>
<li><a href="javascript:goto_page(951+24)"> Rotation </a> <li><a href="javascript:goto_page(951+24)"> C.7 Rotation 951 </a>
<li><a href="javascript:goto_page(952+24)"> Complex Functions of Time </a> <li><a href="javascript:goto_page(952+24)"> C.8 Complex Functions of Time 952 </a>
<li><a href="javascript:goto_page(952+24)"> Numerical Examples </a> <li><a href="javascript:goto_page(952+24)"> C.9 Numerical Examples 952 </a>
</ul> <li><a href="javascript:goto_page(957+24)"> Solving Simultaneous Linear Equations </a> </ul> <li><a href="javascript:goto_page(957+24)"> D Solving Simultaneous Linear Equations 957 </a>
<li><a href="javascript:goto_page(959+24)"> Answers to Selected Problems 959 </a>
<li><a href="javascript:goto_page(971+24)"> Figure Acknowledgments 971 </a>
<li><a href="javascript:goto_page(973+24)"> Index 973 </a>
<%inherit file="main.html" /> <%inherit file="main.html" />
<%block name="js_extra">
<!-- TODO: http://docs.jquery.com/Plugins/Validation --> <!-- TODO: http://docs.jquery.com/Plugins/Validation -->
<script type="text/javascript"> <script type="text/javascript">
$(function() { $(function() {
${init} ${init}
// Show and hide sidebar
var acc_hidden=false;
$('#hide_acc').click(function() {
if(acc_hidden) {
$('#accordion').show();
$('#acc_td').attr("width","320");
$('#hide_acc').html("&lt;<br>&lt;<br>&lt;");
acc_hidden=false;
} else {
$('#accordion').hide();
$('#acc_td').attr("width","0");
$('#hide_acc').html("&gt;<br>&gt;<br>&gt;");
acc_hidden=true;
}
});
}); });
</script> </script>
</%block>
<%include file="navigation.html" args="active_page='courseware'" /> <%include file="navigation.html" args="active_page='courseware'" />
<section class="main-content"> <section class="main-content">
<div class="course-wrapper"> <div class="course-wrapper">
<section class="course-index"> <section class="course-index">
<div id="open_close_accordion"> <header id="open_close_accordion">
<h2>Courseware Index</h2> <h2>Courseware Index</h2>
<a href="#">close</a> <a href="#">close</a>
</div> </header>
<div id="accordion"> <div id="accordion">
${accordion} ${accordion}
......
...@@ -2,6 +2,9 @@ ...@@ -2,6 +2,9 @@
<div name="enroll_form" id="enroll_form"> <div name="enroll_form" id="enroll_form">
<h1>Enroll in 6.002x Circuits &amp; Electronics</h1> <h1>Enroll in 6.002x Circuits &amp; Electronics</h1>
<p class="ie-warning"> Enrollment requires a modern web browser with JavaScript enabled. You don't have this. You can&rsquo;t enroll without upgrading, since you couldn&rsquo;t take the course without upgrading. Feel free to download the latest version of <a href="http://www.mozilla.org/en-US/firefox/new/">Mozilla Firefox</a> or <a href="http://support.google.com/chrome/bin/answer.py?hl=en&answer=95346">Google Chrome</a>, for free, to enroll and take this course.</p>
<form name="enroll" id="enroll_form" method="get"> <form name="enroll" id="enroll_form" method="get">
<fieldset><% if 'error' in locals(): e = error %> <fieldset><% if 'error' in locals(): e = error %>
......
../data/custom_tags
\ No newline at end of file
<%inherit file="marketing.html" /> <%inherit file="marketing.html" />
<%block name="title">MITx 6.002x: Circuits & Electronics</%block>
<%block name="description">6.002x (Circuits and Electronics) is an experimental on-line adaptation of MIT's first undergraduate analog design course: 6.002.</%block>
<%block name="keywords">MITx, circuits, electronics, EECS, electrical engineering, analog circuits, digital circuits, online learning, MIT, online laboratory, education, learners, undergraduate, certificate</%block>
<%block name="header_text"> <%block name="header_text">
<section class="course"> <section class="course">
<section> <section>
<h1>Circuits &amp; Electronics</h1> <h1>Circuits &amp; Electronics</h1>
<h2>6.002x</h2> <h2>6.002x</h2>
<a class="enroll" rel="leanModal" href="#enroll">Enroll in 6.002x Circuits <span>&amp;</span> Electronics</a> <a class="enroll" rel="leanModal" href="#enroll"><noscript>In order to</noscript> Enroll in 6.002x Circuits <span>&amp;</span> Electronics <noscript>you need to have javascript enabled</noscript></a>
</section> </section>
<p>6.002x (Circuits and Electronics) is an experimental on-line adaptation of MIT&rsquo;s first undergraduate analog design course: 6.002. This course will run, free of charge, for students worldwide from March 5, 2012 through June 8, 2012.</p> <p>6.002x (Circuits and Electronics) is an experimental on-line adaptation of MIT&rsquo;s first undergraduate analog design course: 6.002. This course will run, free of charge, for students worldwide from March 5, 2012 through June 8, 2012.</p>
</section> </section>
...@@ -48,7 +52,7 @@ ...@@ -48,7 +52,7 @@
</section> </section>
<section class="cta"> <section class="cta">
<a class="enroll" rel="leanModal" href="#enroll">Enroll in 6.002x Circuits &amp; Electronics</a> <a class="enroll" rel="leanModal" href="#enroll"><noscript>In order to</noscript> Enroll in 6.002x Circuits &amp; Electronics <noscript>you need to have javascript enabled</noscript></a>
</section> </section>
</section> </section>
...@@ -58,17 +62,17 @@ ...@@ -58,17 +62,17 @@
<ul> <ul>
<li> <li>
<img src="/static/staff/agarwal-mit-news-small.jpg"> <img src="/static/staff/agarwal-mit-news-small.jpg" alt="Anant Agarwal">
<h2>Anant Agarwal</h2> <h2>Anant Agarwal</h2>
<p>Director of MIT&rsquo;s Computer Science and Artificial Intelligence Laboratory (CSAIL) and a professor of the Electrical Engineering and Computer Science department at MIT. His research focus is in parallel computer architectures and cloud software systems, and he is a founder of several successful startups, including Tilera, a company that produces scalable multicore processors. Prof. Agarwal won MIT&rsquo;s Smullin and Jamieson prizes for teaching and co-authored the course textbook &ldquo;Foundations of Analog and Digital Electronic Circuits.&rdquo;</p></li> <p>Director of MIT&rsquo;s Computer Science and Artificial Intelligence Laboratory (CSAIL) and a professor of the Electrical Engineering and Computer Science department at MIT. His research focus is in parallel computer architectures and cloud software systems, and he is a founder of several successful startups, including Tilera, a company that produces scalable multicore processors. Prof. Agarwal won MIT&rsquo;s Smullin and Jamieson prizes for teaching and co-authored the course textbook &ldquo;Foundations of Analog and Digital Electronic Circuits.&rdquo;</p></li>
<li> <li>
<img src="/static/staff/gjs-small.jpg"> <img src="/static/staff/gjs-small.jpg" alt="Gerald Sussman">
<h2>Gerald Sussman</h2> <h2>Gerald Sussman</h2>
<p>Professor of Electrical Engineering at MIT. He is a well known educator in the computer science community, perhaps best known as the author of Structure and Interpretation of Computer Programs, which is universally acknowledged as one of the top ten textbooks in computer science, and as the creator of Scheme, a popular teaching language. His research spans a range of topics, from artificial intelligence, to physics and chaotic systems, to supercomputer design.</p></li> <p>Professor of Electrical Engineering at MIT. He is a well known educator in the computer science community, perhaps best known as the author of Structure and Interpretation of Computer Programs, which is universally acknowledged as one of the top ten textbooks in computer science, and as the creator of Scheme, a popular teaching language. His research spans a range of topics, from artificial intelligence, to physics and chaotic systems, to supercomputer design.</p></li>
<li> <li>
<img src="/static/staff/pmitros-small.jpg"> <img src="/static/staff/pmitros-small.jpg" alt="Piotr Mitros">
<h2>Piotr Mitros</h2> <h2>Piotr Mitros</h2>
<p>Research Scientist at MIT. His research focus is in finding ways to apply techniques from control systems to optimizing the learning process. Dr. Mitros has worked as an analog designer at Texas Instruments, Talking Lights, and most recently, designed the analog front end for a novel medical imaging modality for Rhythmia Medical.</p></li> <p>Research Scientist at MIT. His research focus is in finding ways to apply techniques from control systems to optimizing the learning process. Dr. Mitros has worked as an analog designer at Texas Instruments, Talking Lights, and most recently, designed the analog front end for a novel medical imaging modality for Rhythmia Medical.</p></li>
</ul> </ul>
......
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<%block name="title"><title>MITx 6.002</title></%block> <%block name="title"><title>MITx 6.002x</title></%block>
<link rel="stylesheet" href="${ settings.LIB_URL }jquery.treeview.css" type="text/css" media="all" /> <link rel="stylesheet" href="${ settings.LIB_URL }jquery.treeview.css" type="text/css" media="all" />
<link rel="stylesheet" href="/static/css/application.css" type="text/css" media="all" /> <link rel="stylesheet" href="/static/css/application.css" type="text/css" media="all" />
...@@ -27,11 +27,6 @@ ...@@ -27,11 +27,6 @@
</script> </script>
<script type="text/javascript" src="${ settings.LIB_URL }mathjax/MathJax.js?config=TeX-AMS_HTML-full"></script> <script type="text/javascript" src="${ settings.LIB_URL }mathjax/MathJax.js?config=TeX-AMS_HTML-full"></script>
<script type="text/javascript">
$(function(){
$("a[rel*=leanModal]").leanModal();
});
</script>
<%block name="headextra"/> <%block name="headextra"/>
</head> </head>
...@@ -116,5 +111,13 @@ $(function() { ...@@ -116,5 +111,13 @@ $(function() {
}); });
</script> </script>
<script type="text/javascript">
$(function(){
$("a[rel*=leanModal]").leanModal();
});
</script>
<%block name="js_extra"/>
</body> </body>
</html> </html>
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<%block name="title"><title>MITx 6.002</title></%block> <title><%block name="title">MITx: MIT's new online learning initiative</%block></title>
<meta name="description" content="<%block name="description">MITx will offer a portfolio of MIT courses for free to a virtual community of learners around the world</%block>" />
<meta name="keywords" content="<%block name="keywords">MITx, online learning, MIT, online laboratory, education, learners, undergraduate, certificate</%block>" />
<!--link rel="stylesheet" href="${ settings.LIB_URL }jquery.treeview.css" type="text/css" media="all" /--> <!--link rel="stylesheet" href="${ settings.LIB_URL }jquery.treeview.css" type="text/css" media="all" /-->
<link rel="stylesheet" href="/static/css/marketing.css" type="text/css" media="all" /> <link rel="stylesheet" href="/static/css/marketing.css" type="text/css" media="all" />
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<!--[if lt IE 8]> <!--[if lt IE 8]>
<link rel="stylesheet" href="/static/css/marketing-ie.css" type="text/css" media="all" /> <link rel="stylesheet" href="/static/css/marketing-ie.css" type="text/css" media="all" />
<![endif]--> <![endif]-->
...@@ -22,11 +27,6 @@ ...@@ -22,11 +27,6 @@
<script src="/static/js/html5shiv.js"></script> <script src="/static/js/html5shiv.js"></script>
<![endif]--> <![endif]-->
<script type="text/javascript">
$(function(){
$("a[rel*=leanModal]").leanModal();
});
</script>
<%block name="headextra"/> <%block name="headextra"/>
...@@ -151,7 +151,20 @@ $(document).ready(function(){ ...@@ -151,7 +151,20 @@ $(document).ready(function(){
}); });
}); });
$(function(){
$("a[rel*=leanModal]").leanModal();
$("a.login").click(function(){
$("#login_form #li_email").focus();
});
$("a.enroll").click(function(){
$("#enroll_form #ca_email").focus();
});
});
</script> </script>
<%block name="js_extra"/>
</body> </body>
</html> </html>
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
</section> </section>
<section class="intro-video"> <section class="intro-video">
<a id="video-overlay-link" rel="leanModal" href="#video-overlay"><img src="/static/images/video-image.png" id="video-img" alt="" /><span> Watch intro video</span></a> <a id="video-overlay-link" rel="leanModal" href="#video-overlay"><img src="/static/images/video-image.png" id="video-img" alt="Link to MITx introduction video" /><span> Watch intro video</span></a>
</section> </section>
</section> </section>
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
</hgroup> </hgroup>
<p> <p>
<a href="http://6002x.mitx.mit.edu/" class="more-info">More information <span>&amp;</span> Enroll</a> <a href="http://6002x.mitx.mit.edu/" class="more-info">More information <span>&amp;</span> Enroll <span class="arrow">&#8227;</span></a>
</p> </p>
<p>Taught by Anant Agarwal, with Gerald Sussman and Piotr Mitros, 6.002x (Circuits and Electronics) is an on-line adaption of 6.002, MIT&rsquo;s first undergraduate analog design course. This prototype course will run, free of charge, for students worldwide from March 5, 2012 through June 8, 2012. Students will be given the opportunity to demonstrate their mastery of the material and earn a certificate from <em>MITx</em>.</p> <p>Taught by Anant Agarwal, with Gerald Sussman and Piotr Mitros, 6.002x (Circuits and Electronics) is an on-line adaption of 6.002, MIT&rsquo;s first undergraduate analog design course. This prototype course will run, free of charge, for students worldwide from March 5, 2012 through June 8, 2012. Students will be given the opportunity to demonstrate their mastery of the material and earn a certificate from <em>MITx</em>.</p>
...@@ -51,6 +51,8 @@ ...@@ -51,6 +51,8 @@
<iframe id="player" type="text/html" width="560" height="390" src="http://www.youtube.com/embed/p2Q6BrNhdh8?enablejsapi=1" frameborder="0"> <iframe id="player" type="text/html" width="560" height="390" src="http://www.youtube.com/embed/p2Q6BrNhdh8?enablejsapi=1" frameborder="0">
</iframe> </iframe>
</div> </div>
<%block name="js_extra">
<script> <script>
var player; var player;
...@@ -113,3 +115,4 @@ $(function() { ...@@ -113,3 +115,4 @@ $(function() {
}); });
</script> </script>
</%block>
...@@ -7,7 +7,6 @@ ...@@ -7,7 +7,6 @@
</hgroup> </hgroup>
<nav class="${active_page}"> <nav class="${active_page}">
<ul class="coursenav"> <ul class="coursenav">
<li class="courseware"><a href="/courseware">Courseware</a></li> <li class="courseware"><a href="/courseware">Courseware</a></li>
<li class="info"><a href="/info">Course Info</a></li> <li class="info"><a href="/info">Course Info</a></li>
......
...@@ -13,11 +13,15 @@ function ${ id }_load() { ...@@ -13,11 +13,15 @@ function ${ id }_load() {
postJSON('/modx/problem/${ id }/problem_check', postJSON('/modx/problem/${ id }/problem_check',
submit_data, submit_data,
function(json) { function(json) {
switch(json.success) {
if(json['success'] == 'syntax') case 'incorrect': // Worked, but answer not
alert('Syntax error'); case 'correct':
else ${ id }_load();
${ id }_load(); //alert("!!"+json.success);
break;
default:
alert(json.success);
}
}); });
log_event('problem_check', submit_data); log_event('problem_check', submit_data);
}); });
......
...@@ -5,9 +5,9 @@ ...@@ -5,9 +5,9 @@
%> %>
<%block name="headextra"> <%block name="headextra">
<script type="text/javascript" src="${ settings.LIB_URL }flot/jquery.flot.min.js"></script> <script type="text/javascript" src="/static/js/flot/jquery.flot.js"></script>
<script type="text/javascript" src="${ settings.LIB_URL }flot/jquery.flot.stack.js"></script> <script type="text/javascript" src="/static/js/flot/jquery.flot.stack.js"></script>
<script language="javascript" type="text/javascript" src="${ settings.LIB_URL }flot/jquery.flot.symbol.js"></script> <script type="text/javascript" src="/static/js/flot/jquery.flot.symbol.js"></script>
<script> <script>
<%include file="profile_graphs.js"/> <%include file="profile_graphs.js"/>
</script> </script>
......
...@@ -16,7 +16,7 @@ $(function () { ...@@ -16,7 +16,7 @@ $(function () {
}).appendTo("body").fadeIn(200); }).appendTo("body").fadeIn(200);
} }
/* -------------------------------- Grade detail graph -------------------------------- */ /* -------------------------------- Grade detail bars -------------------------------- */
var colors = [$.color.parse("#E8B800"), $.color.parse("#A0CEFA"), $.color.parse("#BD3738"), $.color.parse("#429A2E")]; var colors = [$.color.parse("#E8B800"), $.color.parse("#A0CEFA"), $.color.parse("#BD3738"), $.color.parse("#429A2E")];
//var colors = [$.color.parse("#1B2045"), $.color.parse("#557a00"), $.color.parse("#F5600"), $.color.parse("#FEBA2C")]; //var colors = [$.color.parse("#1B2045"), $.color.parse("#557a00"), $.color.parse("#F5600"), $.color.parse("#FEBA2C")];
//var colors = [$.color.parse("#E7C856"), $.color.parse("#CD462E"), $.color.parse("#B01732"), $.color.parse("#41192A")]; //var colors = [$.color.parse("#E7C856"), $.color.parse("#CD462E"), $.color.parse("#B01732"), $.color.parse("#41192A")];
...@@ -42,7 +42,7 @@ $(function () { ...@@ -42,7 +42,7 @@ $(function () {
data: ${ json.dumps( [[i + tickIndex, score['percentage']] for i,score in enumerate(section['subscores'])] ) }, data: ${ json.dumps( [[i + tickIndex, score['percentage']] for i,score in enumerate(section['subscores'])] ) },
color: colors[${sectionIndex}].toString(), color: colors[${sectionIndex}].toString(),
}); });
ticks = ticks.concat( ${ json.dumps( [[i + tickIndex, str(i + 1)] for i,score in enumerate(section['subscores'])] ) } ); ticks = ticks.concat( ${ json.dumps( [[i + tickIndex, score['label'] ] for i,score in enumerate(section['subscores'])] ) } );
bottomTicks.push( [ ${tickIndex + len(section['subscores'])/2}, "${section['category']}" ] ); bottomTicks.push( [ ${tickIndex + len(section['subscores'])/2}, "${section['category']}" ] );
detail_tooltips["${section['category']}"] = ${ json.dumps([score['summary'] for score in section['subscores']] ) }; detail_tooltips["${section['category']}"] = ${ json.dumps([score['summary'] for score in section['subscores']] ) };
...@@ -57,8 +57,8 @@ $(function () { ...@@ -57,8 +57,8 @@ $(function () {
data: [[${tickIndex}, ${section['totalscore']['score']}]], data: [[${tickIndex}, ${section['totalscore']['score']}]],
color: colors[${sectionIndex}].toString(), color: colors[${sectionIndex}].toString(),
}); });
ticks = ticks.concat( [ [${tickIndex}, "Total"] ] ); ticks = ticks.concat( [ [${tickIndex}, "${section['totallabel']}"] ] );
detail_tooltips["${section['category']} Total"] = [ "${section['totalscore']['summary']}" ]; detail_tooltips["${section['category']} Average"] = [ "${section['totalscore']['summary']}" ];
<% tickIndex += 1 + sectionSpacer %> <% tickIndex += 1 + sectionSpacer %>
%else: ##This is for sections like midterm or final, which have no smaller components %else: ##This is for sections like midterm or final, which have no smaller components
...@@ -66,12 +66,8 @@ $(function () { ...@@ -66,12 +66,8 @@ $(function () {
data: [[${tickIndex}, ${section['totalscore']['score']}]], data: [[${tickIndex}, ${section['totalscore']['score']}]],
color: colors[${sectionIndex}].toString(), color: colors[${sectionIndex}].toString(),
}); });
%if section['category'] == "Midterm": ticks = ticks.concat( [ [${tickIndex}," ${section['totallabel']}"] ] );
bottomTicks = bottomTicks.concat( [ [${tickIndex}, "${section['category']}"] ] );
%else:
ticks = ticks.concat( [ [${tickIndex}, "${section['category']}"] ] );
%endif
detail_tooltips["${section['category']}"] = [ "${section['totalscore']['summary']}" ]; detail_tooltips["${section['category']}"] = [ "${section['totalscore']['summary']}" ];
<% tickIndex += 1 + sectionSpacer %> <% tickIndex += 1 + sectionSpacer %>
...@@ -80,13 +76,45 @@ $(function () { ...@@ -80,13 +76,45 @@ $(function () {
%endfor %endfor
//Alwasy be sure that one series has the xaxis set to 2, or the second xaxis labels won't show up //Alwasy be sure that one series has the xaxis set to 2, or the second xaxis labels won't show up
series.push( {label: 'Dropped Scores', data: droppedScores, points: {symbol: "cross", show: true, radius: 3}, bars: {show: false}, color: "red", xaxis: 2} ); series.push( {label: 'Dropped Scores', data: droppedScores, points: {symbol: "cross", show: true, radius: 3}, bars: {show: false}, color: "red"} );
/* ----------------------------- Grade overviewew bar -------------------------*/
<%
totalWeight = 0.0
sectionIndex = 0
totalScore = 0.0
overviewBarX = tickIndex
%>
%for section in grade_summary:
<%
weighted_score = section['totalscore']['score'] * section['weight']
summary_text = "{0} - {1:.1%} of a possible {2:.0%}".format(section['category'], weighted_score, section['weight'])
%>
%if section['totalscore']['score'] > 0:
series.push({label: "${section['category']} - Weighted",
data: [[${overviewBarX}, ${weighted_score}]],
color: colors[${sectionIndex}].toString(),
});
%endif
detail_tooltips["${section['category']} - Weighted"] = [ "${summary_text}" ];
<%
sectionIndex += 1
totalWeight += section['weight']
totalScore += section['totalscore']['score'] * section['weight']
%>
%endfor
ticks = ticks.concat( [ [${overviewBarX}, "Total"] ] );
<% tickIndex += 1 + sectionSpacer %>
var options = { var options = {
series: {lines: {show: false, steps: false }, series: {stack: true,
bars: {show: true, barWidth: 0.6, align: 'center', lineWidth: 1},}, lines: {show: false, steps: false },
xaxis: {tickLength: 0, min: 0.0, max: ${tickIndex - sectionSpacer}}, bars: {show: true, barWidth: 0.6, align: 'center', lineWidth: 1},},
xaxes: [{ticks: ticks}, {ticks: bottomTicks}], xaxis: {tickLength: 0, min: 0.0, max: ${tickIndex - sectionSpacer}, ticks: ticks, labelAngle: 90},
yaxis: {ticks: [[1, "100%"], [0.87, "A 87%"], [0.7, "B 70%"], [0.6, "C 60%"], [0, "0%"]], min: 0.0, max: 1.0, labelWidth: 50}, yaxis: {ticks: [[1, "100%"], [0.87, "A 87%"], [0.7, "B 70%"], [0.6, "C 60%"], [0, "0%"]], min: 0.0, max: 1.0, labelWidth: 50},
grid: { hoverable: true, clickable: true, borderWidth: 1, grid: { hoverable: true, clickable: true, borderWidth: 1,
markings: [ {yaxis: {from: 0.87, to: 1 }, color: "#EBFFD5"}, {yaxis: {from: 0.7, to: 0.87 }, color: "#E6FFFF"}, markings: [ {yaxis: {from: 0.87, to: 1 }, color: "#EBFFD5"}, {yaxis: {from: 0.7, to: 0.87 }, color: "#E6FFFF"},
...@@ -94,17 +122,42 @@ $(function () { ...@@ -94,17 +122,42 @@ $(function () {
legend: {show: false}, legend: {show: false},
}; };
if ($("#grade-detail-graph").length > 0) { var $grade_detail_graph = $("#grade-detail-graph");
$.plot($("#grade-detail-graph"), series, options); if ($grade_detail_graph.length > 0) {
var plot = $.plot($grade_detail_graph, series, options);
var o = plot.pointOffset({x: ${overviewBarX} , y: ${totalScore}});
$grade_detail_graph.append('<div style="position:absolute;left:' + (o.left - 12) + 'px;top:' + (o.top - 20) + 'px">${"{totalscore:.0%}".format(totalscore=totalScore)}</div>');
// //Rotate the x-axis labels
// var rotateValue = "rotate(-60deg)";
// var rotateOrigin = "bottom left";
// $("#grade-detail-graph .x1Axis .tickLabel").css( {
// '-webkit-transform': rotateValue,
// '-moz-transform': rotateValue,
// '-ms-transform': rotateValue,
// '-o-transform': rotateValue,
// 'transform': rotateValue,
//
// '-webkit-transform-origin': rotateOrigin,
// '-moz-transform-origin': rotateOrigin,
// '-ms-transform-origin': rotateOrigin,
// '-o-transform-origin': rotateOrigin,
//
// 'text-align' : 'left',
// });
} }
var previousPoint = null; var previousPoint = null;
$("#grade-detail-graph").bind("plothover", function (event, pos, item) { $("#grade-detail-graph").bind("plothover", function (event, pos, item) {
$("#x").text(pos.x.toFixed(2)); $("#x").text(pos.x.toFixed(2));
$("#y").text(pos.y.toFixed(2)); $("#y").text(pos.y.toFixed(2));
if (item) { if (item) {
if (previousPoint != item.dataIndex) { if (previousPoint != (item.dataIndex, item.seriesIndex)) {
previousPoint = item.dataIndex; previousPoint = (item.dataIndex, item.seriesIndex);
$("#tooltip").remove(); $("#tooltip").remove();
......
No preview for this file type
...@@ -5,12 +5,13 @@ $ gem install sass ...@@ -5,12 +5,13 @@ $ gem install sass
We are also using Bourbon with sass. They are a generic set of mixins, and functions that allow for more rapid development of CSS3. Find out more about bourbon here: https://github.com/thoughtbot/bourbon We are also using Bourbon with sass. They are a generic set of mixins, and functions that allow for more rapid development of CSS3. Find out more about bourbon here: https://github.com/thoughtbot/bourbon
Then to generate Sass files cd to templates directory and watch the sass files for developement: To use bourbon you need to install it with:
$ gem install bourbon
Then to generate Sass files cd to templates directory and watch the sass files for developement:
$ sass --watch sass:../static/css/ -r ./sass/bourbon/lib/bourbon.rb $ sass --watch sass:../static/css/ -r ./sass/bourbon/lib/bourbon.rb
To generate a compressed css file for production: To generate a compressed css file for production:
$ sass --watch sass:../static/css/ -r ./sass/bourbon/lib/bourbon.rb --style :compressed $ sass --watch sass:../static/css/ -r ./sass/bourbon/lib/bourbon.rb --style :compressed
These will automatically generate the CSS files on save. These will automatically generate the CSS files on save.
...@@ -43,8 +43,10 @@ div.info-wrapper { ...@@ -43,8 +43,10 @@ div.info-wrapper {
border-left: 1px solid #d3d3d3; border-left: 1px solid #d3d3d3;
h1 { h1 {
padding: 0 lh(); padding: lh(.5) lh();
font-size: 18px; font-size: 18px;
margin: 0 ;
@extend .bottom-border;
} }
ol { ol {
......
...@@ -9,8 +9,10 @@ div.profile-wrapper { ...@@ -9,8 +9,10 @@ div.profile-wrapper {
border-right: 0; border-right: 0;
h1 { h1 {
padding:0 lh(); padding: lh(.5) lh();
font-size: 18px; font-size: 18px;
margin: 0 ;
@extend .bottom-border;
} }
ul { ul {
......
div.book-wrapper { div.book-wrapper {
@extend .table-wrapper; @extend .table-wrapper;
ul#booknav { section.book-sidebar {
@extend .sidebar; @extend .sidebar;
@include box-sizing(border-box); @include box-sizing(border-box);
@extend .tran;
a { ul#booknav {
color: #000;
&:hover { a {
color: #666; color: #000;
}
}
li {
background: none;
padding-left: 30px;
div.hitarea {
margin-left: -22px;
background-image: url('/static/images/treeview-default.gif');
position: relative;
top: 4px;
&:hover { &:hover {
opacity: 0.6; color: #666;
filter: alpha(opacity=60);
} }
} }
ul { li {
background: none; background: none;
padding-left: 30px;
div.hitarea {
margin-left: -22px;
background-image: url('/static/images/treeview-default.gif');
position: relative;
top: 4px;
&:hover {
opacity: 0.6;
filter: alpha(opacity=60);
}
}
ul {
background: none;
}
} }
}
> li { > li {
border-bottom: 1px solid #d3d3d3; border-bottom: 1px solid #d3d3d3;
@include box-shadow(0 1px 0 #eee); @include box-shadow(0 1px 0 #eee);
padding: 7px 7px 7px 30px; padding: 7px 7px 7px 30px;
}
} }
} }
...@@ -74,6 +78,13 @@ div.book-wrapper { ...@@ -74,6 +78,13 @@ div.book-wrapper {
} }
} }
} }
&.bottom-nav {
margin-top: lh();
margin-bottom: -(lh());
border-bottom: 0;
border-top: 1px solid #EDDFAA;
}
} }
section.page { section.page {
...@@ -85,4 +96,36 @@ div.book-wrapper { ...@@ -85,4 +96,36 @@ div.book-wrapper {
} }
} }
} }
&.closed {
section.book-sidebar {
width: flex-grid(.6);
header#open_close_accordion {
padding: 0;
a {
background-image: url('/static/images/slide-right-icon.png');
}
h2 {
visibility: hidden;
width: 10px;
padding: 0;
}
}
ul#booknav {
visibility: hidden;
width: 10px;
padding: 0;
overflow: hidden;
max-height: 100px;
}
}
section.course-content {
width: flex-grid(11.5) + flex-gutter();
}
}
} }
...@@ -7,10 +7,11 @@ ...@@ -7,10 +7,11 @@
@import "jquery-ui-1.8.16.custom"; @import "jquery-ui-1.8.16.custom";
// pages // pages
@import "courseware/courseware", "courseware/sidebar", "courseware/video", "courseware/sequence-nav"; @import "courseware/courseware", "courseware/sidebar", "courseware/video", "courseware/sequence-nav", "courseware/amplifier";
@import "textbook"; @import "textbook";
@import "info"; @import "info";
@import "profile"; @import "profile";
@import "wiki/basic-html", "wiki/sidebar", "wiki/create", "wiki/wiki"; @import "wiki/basic-html", "wiki/sidebar", "wiki/create", "wiki/wiki";
@import "help"; @import "help";
@import "discussion/askbot-original", "discussion/discussion","discussion/sidebar", "discussion/questions", "discussion/tags", "discussion/question-view" , "discussion/answers", "discussion/forms", "discussion/form-wmd-toolbar";
@import "discussion/askbot-original", "discussion/discussion","discussion/sidebar", "discussion/questions", "discussion/tags", "discussion/question-view" , "discussion/answers", "discussion/forms", "discussion/form-wmd-toolbar", "discussion/modals", "discussion/profile";
...@@ -10,8 +10,8 @@ ...@@ -10,8 +10,8 @@
margin: 0 auto; margin: 0 auto;
max-width: $fg-max-width; max-width: $fg-max-width;
min-width: $fg-min-width; min-width: $fg-min-width;
width: flex-grid(12);
text-align: left; text-align: left;
width: flex-grid(12);
div.table-wrapper { div.table-wrapper {
display: table; display: table;
...@@ -20,24 +20,24 @@ ...@@ -20,24 +20,24 @@
} }
h1.top-header { h1.top-header {
margin: (-(lh())) (-(lh())) lh();
padding: lh();
background: #f3f3f3; background: #f3f3f3;
border-bottom: 1px solid #e3e3e3; border-bottom: 1px solid #e3e3e3;
margin: (-(lh())) (-(lh())) lh();
padding: lh();
} }
.button { .button {
@include box-shadow(inset 0 1px 0 lighten(#888, 10%), 0 0 3px #ccc);
@include linear-gradient(lighten(#888, 5%), darken(#888, 5%));
@include border-radius(3px);
border: 1px solid darken(#888, 10%); border: 1px solid darken(#888, 10%);
padding: 4px 8px; @include border-radius(3px);
@include box-shadow(inset 0 1px 0 lighten(#888, 10%), 0 0 3px #ccc);
color: #fff; color: #fff;
font: bold $body-font-size $body-font-family;
cursor: pointer; cursor: pointer;
-webkit-font-smoothing: antialiased; font: bold $body-font-size $body-font-family;
text-shadow: none; @include linear-gradient(lighten(#888, 5%), darken(#888, 5%));
padding: 4px 8px;
text-decoration: none; text-decoration: none;
text-shadow: none;
-webkit-font-smoothing: antialiased;
&:hover, &:focus { &:hover, &:focus {
@include box-shadow(inset 0 1px 0 lighten(#888, 20%), 0 0 3px #ccc); @include box-shadow(inset 0 1px 0 lighten(#888, 20%), 0 0 3px #ccc);
...@@ -47,8 +47,8 @@ h1.top-header { ...@@ -47,8 +47,8 @@ h1.top-header {
} }
.content { .content {
@include box-sizing(border-box);
@include box-shadow(inset 0 0 2px 3px #f3f3f3); @include box-shadow(inset 0 0 2px 3px #f3f3f3);
@include box-sizing(border-box);
display: table-cell; display: table-cell;
padding: lh(); padding: lh();
vertical-align: top; vertical-align: top;
...@@ -60,43 +60,55 @@ h1.top-header { ...@@ -60,43 +60,55 @@ h1.top-header {
} }
.sidebar { .sidebar {
@include box-shadow( inset 0 0 0 1px #f6f6f6);
@include box-sizing(border-box);
@include border-radius(4px 0 0 4px);
background: #e3e3e3; background: #e3e3e3;
@include border-radius(4px 0 0 4px);
border-right: 1px solid #d3d3d3; border-right: 1px solid #d3d3d3;
@include box-shadow( inset 0 0 0 1px #f6f6f6);
@include box-sizing(border-box);
display: table-cell; display: table-cell;
font-family: $body-font-family; font-family: $body-font-family;
position: relative;
text-shadow: 0 1px 0 #f1f1f1; text-shadow: 0 1px 0 #f1f1f1;
vertical-align: top; vertical-align: top;
width: flex-grid(3); width: flex-grid(3);
position: relative;
h1, h2 {
font-size: 18px;
font-weight: 800;
letter-spacing: 0;
text-transform: none;
}
.bottom-border {
@include box-shadow(0 1px 0 #eee);
border-bottom: 1px solid #d3d3d3;
}
@media print { @media print {
display: none; display: none;
} }
h3 { h3 {
@include box-shadow(0 1px 0 #eee);
background: none;
border: none; border: none;
border-bottom: 1px solid #d3d3d3; border-bottom: 1px solid #d3d3d3;
@extend .bottom-border;
background: none;
color: #000; color: #000;
font-weight: normal; font-weight: normal;
margin: 0; margin: 0;
overflow: hidden; overflow: hidden;
a { a {
@include transition();
color: lighten($text-color, 10%); color: lighten($text-color, 10%);
display: block; display: block;
font-size: $body-font-size; font-size: $body-font-size;
padding: 7px 7px 7px 30px; padding: 7px 7px 7px 30px;
text-decoration: none; text-decoration: none;
@include transition();
&:hover { &:hover {
@include box-shadow(0 1px 0 #fff);
background: #efefef; background: #efefef;
@include box-shadow(0 1px 0 #fff);
} }
} }
...@@ -105,10 +117,10 @@ h1.top-header { ...@@ -105,10 +117,10 @@ h1.top-header {
} }
&.active { &.active {
@include box-shadow(none);
background: none; background: none;
border: 0; border: 0;
border-bottom: 1px solid #bbb; border-bottom: 1px solid #bbb;
@include box-shadow(none);
color: #000; color: #000;
font-weight: bold; font-weight: bold;
...@@ -118,19 +130,48 @@ h1.top-header { ...@@ -118,19 +130,48 @@ h1.top-header {
} }
} }
header#open_close_accordion {
border-bottom: 1px solid #d3d3d3;
@include box-shadow(0 1px 0 #eee);
padding: lh(.5) lh();
position: relative;
h2 {
padding-right: 20px;
margin: 0;
}
a {
background: #eee url('/static/images/slide-left-icon.png') center center no-repeat;
border: 1px solid #D3D3D3;
@include border-radius(3px 0 0 3px);
height: 16px;
padding: 8px;
position: absolute;
right: -1px;
text-indent: -9999px;
top: 6px;
width: 16px;
&:hover {
background-color: white;
}
}
}
a.button { a.button {
text-decoration: none; text-decoration: none;
} }
} }
.topbar { .topbar {
@extend .clearfix;
background: #F6EFD4; background: #F6EFD4;
border-bottom: 1px solid darken(#F6EFD4, 10%); border-bottom: 1px solid darken(#F6EFD4, 10%);
margin: (-$body-line-height) (-$body-line-height) $body-line-height; @include box-shadow(inset 0 1px 0 #fff, inset 1px 0 0 #fff);
font-size: 12px; font-size: 12px;
margin: (-$body-line-height) (-$body-line-height) $body-line-height;
text-shadow: 0 1px 0 #fff; text-shadow: 0 1px 0 #fff;
@include box-shadow(inset 0 1px 0 #fff, inset 1px 0 0 #fff);
@extend .clearfix;
@media print { @media print {
display: none; display: none;
...@@ -145,12 +186,12 @@ h1.top-header { ...@@ -145,12 +186,12 @@ h1.top-header {
} }
&.block-link { &.block-link {
@include box-shadow(inset 1px 0 0 lighten(#f6efd4, 5%));
background: darken(#F6EFD4, 5%); background: darken(#F6EFD4, 5%);
border-left: 1px solid darken(#f6efd4, 20%); border-left: 1px solid darken(#f6efd4, 20%);
@include box-shadow(inset 1px 0 0 lighten(#f6efd4, 5%));
display: block;
padding: lh(.75); padding: lh(.75);
text-transform: uppercase; text-transform: uppercase;
display: block;
&:hover { &:hover {
background: none; background: none;
...@@ -158,3 +199,7 @@ h1.top-header { ...@@ -158,3 +199,7 @@ h1.top-header {
} }
} }
} }
.tran {
@include transition( all, .2s, $ease-in-out-quad);
}
...@@ -20,4 +20,3 @@ ...@@ -20,4 +20,3 @@
@function lh($amount: 1) { @function lh($amount: 1) {
@return $body-line-height * $amount; @return $body-line-height * $amount;
} }
// JM MOSFET AMPLIFIER
div#graph-container {
@extend .clearfix;
canvas#graph {
background-color: rgb(60, 60, 100);
width: flex-grid(4.5, 9);
float: left;
margin-right: flex-gutter(9);
}
div.graph-controls {
width: flex-grid(4.5, 9);
float: left;
select#musicTypeSelect {
display: block;
margin-bottom: lh(2);
}
div#graph-output {
display: block;
margin-bottom: lh(2);
}
div#graph-listen {
display: block;
margin-bottom: lh(2);
}
p {
margin-bottom: lh(1);
}
div#label {
display: inline-block;
}
input#playButton {
display: block;
}
}
}
div#schematic-container {
@extend .clearfix;
canvas {
background-color: rgb(60, 60, 100);
width: flex-grid(4.5, 9);
float: left;
margin-right: flex-gutter(9);
}
div.schematic-sliders {
width: flex-grid(4.5, 9);
float: left;
div.slider-label#vs {
margin-top: lh(2.0);
}
div.slider-label {
margin-bottom: lh(0.5);
}
div.slider {
margin-bottom: lh(1);
}
}
}
//End JM MOSFET AMPLIFIER
...@@ -5,10 +5,6 @@ div.course-wrapper { ...@@ -5,10 +5,6 @@ div.course-wrapper {
list-style: none; list-style: none;
} }
.tran {
@include transition( all, .2s, $ease-in-out-quad);
}
section.course-content { section.course-content {
@extend .content; @extend .content;
...@@ -176,7 +172,7 @@ div.course-wrapper { ...@@ -176,7 +172,7 @@ div.course-wrapper {
section.course-index { section.course-index {
width: flex-grid(.6); width: flex-grid(.6);
div#open_close_accordion { header#open_close_accordion {
padding: 0; padding: 0;
a { a {
......
...@@ -2,34 +2,6 @@ section.course-index { ...@@ -2,34 +2,6 @@ section.course-index {
@extend .sidebar; @extend .sidebar;
@extend .tran; @extend .tran;
div#open_close_accordion {
@include box-shadow(0 1px 0 #eee);
border-bottom: 1px solid #d3d3d3;
padding: 0 lh();
position: relative;
h2 {
padding-right: 20px;
}
a {
width: 16px;
text-indent: -9999px;
height: 16px;
position: absolute;
padding: 8px;
top: -12px;
right: -1px;
border: 1px solid #D3D3D3;
background: #eee url('/static/images/slide-left-icon.png') center center no-repeat;
@include border-radius(3px 0 0 3px);
&:hover {
background-color: white;
}
}
}
div#accordion { div#accordion {
h3 { h3 {
......
div.answer-controls { div.answer-controls {
@include box-sizing(border-box); @include box-sizing(border-box);
@extend div.question-controls;
display: inline-block; display: inline-block;
margin: 20px 0; margin: 0 0 15px;
padding-left: flex-grid(1.1); padding-left: flex-grid(1.1);
width: 100%;
div.answer-sort { div.answer-count {
@extend div.question-sort; display: inline-block;
float: left;
} }
div.answer-count { div.answer-sort {
@extend div.question-count; float: right;
margin-left: flex-gutter();
nav {
@extend .action-link;
float: right;
margin-top: 34px;
a {
&.on span{
font-weight: bold;
}
&:before {
content: '|';
color: #ccc;
font-size: 16px;
}
}
}
} }
} }
...@@ -44,12 +64,49 @@ div.answer-block { ...@@ -44,12 +64,49 @@ div.answer-block {
} }
div.answered-by-owner { div.answered-by-owner {
color: $mit-red; p {
font-style: italic;
color: #656565;
}
div.comments-container { div.comments-container {
color: #555; color: #555;
} }
} }
div.deleted {
p {
color: $mit-red;
}
}
}
div.paginator {
@extend div.answer-block;
text-align: center;
padding: 20px 0;
span {
@include border-radius(3px);
background: #eee;
margin: 0 5px;
padding: 4px 10px;
&.curr {
background: none;
color: $mit-red;
font-weight: bold;
}
&.next, &.prev {
@extend .light-button;
}
a {
color: #555;
text-decoration: none;
}
}
} }
div.answer-own { div.answer-own {
...@@ -60,18 +117,27 @@ div.answer-own { ...@@ -60,18 +117,27 @@ div.answer-own {
} }
div.answer-actions { div.answer-actions {
text-align: right;
margin: 0; margin: 0;
padding: 0; padding:8px 8px 8px 0;
text-align: right;
border-top: 1px solid #efefef;
span.sep { span.sep {
color: #ddd; color: #EDDFAA;
} }
a { a {
text-decoration: none;
cursor: pointer; cursor: pointer;
text-decoration: none;
&.question-delete {
// color: $mit-red;
}
&.question-edit, &.permant-link {
// color: darken(#F6EFD4, 45%);;
}
} }
a.question-edit, a.permant-link {
color: #999;
}
} }
...@@ -107,9 +107,9 @@ ...@@ -107,9 +107,9 @@
// height: 0; // height: 0;
// visibility: hidden; } // visibility: hidden; }
.badges a { // .badges a {
color: #763333; // color: #763333;
text-decoration: underline; } // text-decoration: underline; }
// a:hover { // a:hover {
// text-decoration: underline; } // text-decoration: underline; }
...@@ -792,53 +792,53 @@ body.anon #searchbar { ...@@ -792,53 +792,53 @@ body.anon #searchbar {
margin-bottom: 16px; margin-bottom: 16px;
float: right; } float: right; }
.paginator { // .paginator {
padding: 5px 0 10px 0; // padding: 5px 0 10px 0;
font-size: 13px; // font-size: 13px;
margin-bottom: 10px; // margin-bottom: 10px;
.prev a, .next a { // .prev a, .next a {
background-color: #fff; // background-color: #fff;
color: #777; // color: #777;
padding: 2px 4px 3px 4px; // padding: 2px 4px 3px 4px;
&:visited { // &:visited {
background-color: #fff; // background-color: #fff;
color: #777; // color: #777;
padding: 2px 4px 3px 4px; } } // padding: 2px 4px 3px 4px; } }
a { // a {
color: #7ea9b3; } // color: #7ea9b3; }
.prev { // .prev {
margin-right: .5em; } // margin-right: .5em; }
.next { // .next {
margin-left: .5em; } // margin-left: .5em; }
.page a { // .page a {
padding: .25em; // padding: .25em;
background-color: #fff; // background-color: #fff;
margin: 0em .25em; // margin: 0em .25em;
color: #ff; // color: #ff;
&:visited { // &:visited {
padding: .25em; // padding: .25em;
background-color: #fff; // background-color: #fff;
margin: 0em .25em; // margin: 0em .25em;
color: #ff; } } // color: #ff; } }
.curr { // .curr {
padding: .25em; // padding: .25em;
background-color: #fff; // background-color: #fff;
margin: 0em .25em; // margin: 0em .25em;
color: #ff; // color: #ff;
background-color: #8ebcc7; // background-color: #8ebcc7;
color: #fff; // color: #fff;
font-weight: bold; } // font-weight: bold; }
.next a, .prev a { // .next a, .prev a {
color: #7ea9b3; } // color: #7ea9b3; }
.page a:hover, .curr a:hover, .prev a:hover, .next a:hover { // .page a:hover, .curr a:hover, .prev a:hover, .next a:hover {
color: #8c8c8c; // color: #8c8c8c;
background-color: #e1e1e1; // background-color: #e1e1e1;
text-decoration: none; } // text-decoration: none; }
.text { // .text {
color: #777; // color: #777;
padding: .3em; } // padding: .3em; }
.paginator-container-left { // .paginator-container-left {
padding: 5px 0 10px 0; } } // padding: 5px 0 10px 0; } }
// .tag-size-1 { // .tag-size-1 {
// font-size: 12px; } // font-size: 12px; }
...@@ -1037,44 +1037,44 @@ body.anon #searchbar { ...@@ -1037,44 +1037,44 @@ body.anon #searchbar {
// border: #cce6ec 3px solid; // border: #cce6ec 3px solid;
// width: 725px; } } // width: 725px; } }
.ask-page div#question-list, .edit-question-page div#question-list { // .ask-page div#question-list, .edit-question-page div#question-list {
float: none; // float: none;
border-bottom: #f0f0ec 1px solid; // border-bottom: #f0f0ec 1px solid;
float: left; // float: left;
margin-bottom: 10px; } // margin-bottom: 10px; }
.ask-page div#question-list a, .edit-question-page div#question-list a {
line-height: 30px; }
.ask-page div#question-list h2, .edit-question-page div#question-list h2 { // .ask-page div#question-list a, .edit-question-page div#question-list a {
font-size: 13px; // line-height: 30px; }
padding-bottom: 0;
color: #1b79bd;
border-top: #f0f0ec 1px solid;
border-left: #f0f0ec 1px solid;
height: 30px;
line-height: 30px;
font-weight: normal; }
.ask-page div#question-list span, .edit-question-page div#question-list span { // .ask-page div#question-list h2, .edit-question-page div#question-list h2 {
width: 28px; // font-size: 13px;
height: 26px; // padding-bottom: 0;
line-height: 26px; // color: #1b79bd;
text-align: center; // border-top: #f0f0ec 1px solid;
margin-right: 10px; // border-left: #f0f0ec 1px solid;
float: left; // height: 30px;
display: block; // line-height: 30px;
color: #fff; // font-weight: normal; }
background: #b8d0d5;
border-radius: 3px;
-ms-border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
-khtml-border-radius: 3px; }
.ask-page label, .edit-question-page label { // .ask-page div#question-list span, .edit-question-page div#question-list span {
color: #525252; // width: 28px;
font-size: 13px; } // height: 26px;
// line-height: 26px;
// text-align: center;
// margin-right: 10px;
// float: left;
// display: block;
// color: #fff;
// background: #b8d0d5;
// border-radius: 3px;
// -ms-border-radius: 3px;
// -moz-border-radius: 3px;
// -webkit-border-radius: 3px;
// -khtml-border-radius: 3px; }
// .ask-page label, .edit-question-page label {
// color: #525252;
// font-size: 13px; }
// .ask-page #id_tags, .edit-question-page #id_tags { // .ask-page #id_tags, .edit-question-page #id_tags {
// border: #cce6ec 3px solid; // border: #cce6ec 3px solid;
...@@ -1083,9 +1083,9 @@ body.anon #searchbar { ...@@ -1083,9 +1083,9 @@ body.anon #searchbar {
// width: 395px; // width: 395px;
// font-size: 14px; } // font-size: 14px; }
.title-desc { // .title-desc {
color: #707070; // color: #707070;
font-size: 13px; } // font-size: 13px; }
// #fmanswer input.submit, .ask-page input.submit, .edit-question-page input.submit { // #fmanswer input.submit, .ask-page input.submit, .edit-question-page input.submit {
// float: left; // float: left;
...@@ -1846,27 +1846,27 @@ body.anon #searchbar { ...@@ -1846,27 +1846,27 @@ body.anon #searchbar {
// width: 270px; // width: 270px;
// margin-bottom: 15px; } // margin-bottom: 15px; }
a { // a {
&.medal { // &.medal {
font-size: 17px; // font-size: 17px;
line-height: 250%; // line-height: 250%;
margin-right: 5px; // margin-right: 5px;
color: #333; // color: #333;
text-decoration: none; // text-decoration: none;
background: url(../images/medala.gif) no-repeat; // background: url(../images/medala.gif) no-repeat;
border-left: 1px solid #eee; // border-left: 1px solid #eee;
border-top: 1px solid #eee; // border-top: 1px solid #eee;
border-bottom: 1px solid #ccc; // border-bottom: 1px solid #ccc;
border-right: 1px solid #ccc; // border-right: 1px solid #ccc;
padding: 4px 12px 4px 6px; } // padding: 4px 12px 4px 6px; }
&:hover.medal { // &:hover.medal {
color: #333; // color: #333;
text-decoration: none; // text-decoration: none;
background: url(../images/medala_on.gif) no-repeat; // background: url(../images/medala_on.gif) no-repeat;
border-left: 1px solid #e7e296; // border-left: 1px solid #e7e296;
border-top: 1px solid #e7e296; // border-top: 1px solid #e7e296;
border-bottom: 1px solid #d1ca3d; // border-bottom: 1px solid #d1ca3d;
border-right: 1px solid #d1ca3d; } } // border-right: 1px solid #d1ca3d; } }
#award-list .user { #award-list .user {
float: left; float: left;
...@@ -1877,19 +1877,19 @@ a { ...@@ -1877,19 +1877,19 @@ a {
margin-bottom: 15px; margin-bottom: 15px;
float: left; } float: left; }
.user-profile-page { // .user-profile-page {
font-size: 13px; // font-size: 13px;
color: #525252; // color: #525252;
p { // p {
font-size: 13px; // font-size: 13px;
line-height: 1.3; // line-height: 1.3;
color: #525252; } // color: #525252; }
.avatar img { // .avatar img {
border: #eee 1px solid; // border: #eee 1px solid;
padding: 5px; } // padding: 5px; }
h2 { // h2 {
padding: 10px 0px 10px 0px; // padding: 10px 0px 10px 0px;
font-family: 'yanone kaffeesatz',sans-serif; } } // font-family: 'yanone kaffeesatz',sans-serif; } }
.user-details { .user-details {
font-size: 13px; font-size: 13px;
...@@ -1970,10 +1970,10 @@ a { ...@@ -1970,10 +1970,10 @@ a {
font-weight: 700; font-weight: 700;
color: #777; } color: #777; }
.answer-summary { // .answer-summary {
display: block; // display: block;
clear: both; // clear: both;
padding: 3px; } // padding: 3px; }
.answer-votes { .answer-votes {
background-color: #eeeeee; background-color: #eeeeee;
...@@ -2111,44 +2111,44 @@ ins { ...@@ -2111,44 +2111,44 @@ ins {
background-color: #e6f0a2; } background-color: #e6f0a2; }
background-color: #e6f0a2; } background-color: #e6f0a2; }
.vote-notification { // .vote-notification {
z-index: 1; // z-index: 1;
cursor: pointer; // cursor: pointer;
display: none; // display: none;
position: absolute; // position: absolute;
font-family: arial; // font-family: arial;
font-size: 14px; // font-size: 14px;
font-weight: normal; // font-weight: normal;
color: white; // color: white;
background-color: #8e0000; // background-color: #8e0000;
text-align: center; // text-align: center;
padding-bottom: 10px; // padding-bottom: 10px;
-webkit-box-shadow: 0px 2px 4px #370000; // -webkit-box-shadow: 0px 2px 4px #370000;
-moz-box-shadow: 0px 2px 4px #370000; // -moz-box-shadow: 0px 2px 4px #370000;
box-shadow: 0px 2px 4px #370000; // box-shadow: 0px 2px 4px #370000;
border-radius: 4px; // border-radius: 4px;
-ms-border-radius: 4px; // -ms-border-radius: 4px;
-moz-border-radius: 4px; // -moz-border-radius: 4px;
-webkit-border-radius: 4px; // -webkit-border-radius: 4px;
-khtml-border-radius: 4px; // -khtml-border-radius: 4px;
h3 { // h3 {
background: url(../images/notification.png) repeat-x top; // background: url(../images/notification.png) repeat-x top;
padding: 10px 10px 10px 10px; // padding: 10px 10px 10px 10px;
font-size: 13px; // font-size: 13px;
margin-bottom: 5px; // margin-bottom: 5px;
border-top: #8e0000 1px solid; // border-top: #8e0000 1px solid;
color: #fff; // color: #fff;
font-weight: normal; // font-weight: normal;
border-top-right-radius: 4px; // border-top-right-radius: 4px;
border-top-left-radius: 4px; // border-top-left-radius: 4px;
-moz-border-radius-topright: 4px; // -moz-border-radius-topright: 4px;
-moz-border-radius-topleft: 4px; // -moz-border-radius-topleft: 4px;
-webkit-border-top-left-radius: 4px; // -webkit-border-top-left-radius: 4px;
-webkit-border-top-right-radius: 4px; } // -webkit-border-top-right-radius: 4px; }
a { // a {
color: #fb7321; // color: #fb7321;
text-decoration: underline; // text-decoration: underline;
font-weight: bold; } } // font-weight: bold; } }
// #ground { // #ground {
// width: 100%; // width: 100%;
...@@ -2202,8 +2202,8 @@ span { ...@@ -2202,8 +2202,8 @@ span {
p.form-item { p.form-item {
margin: 0px; } margin: 0px; }
.deleted { // .deleted {
background: #f4e7e7 none repeat scroll 0 0; } // background: #f4e7e7 none repeat scroll 0 0; }
.form-row { .form-row {
line-height: 25px; } line-height: 25px; }
...@@ -2621,16 +2621,16 @@ p.signup_p { ...@@ -2621,16 +2621,16 @@ p.signup_p {
li { li {
display: inline; } } display: inline; } }
.user-profile-page { // .user-profile-page {
.avatar p { // .avatar p {
margin-bottom: 0px; } // margin-bottom: 0px; }
.tabbar a#stats { // .tabbar a#stats {
margin-left: 0; } // margin-left: 0; }
img.gravatar { // img.gravatar {
margin: 2px 0 3px 0; } // margin: 2px 0 3px 0; }
h3 { // h3 {
padding: 0; // padding: 0;
margin-top: -3px; } } // margin-top: -3px; } }
.userlist { .userlist {
font-size: 13px; } font-size: 13px; }
......
...@@ -20,11 +20,11 @@ ...@@ -20,11 +20,11 @@
} }
.action-link { .action-link {
a { a {
color: darken(#F6EFD4, 50%); color: $mit-red;
&:hover { &:hover {
text-decoration: none; text-decoration: none;
color: darken(#F6EFD4, 70%); color: darken($mit-red, 20%);
} }
} }
} }
...@@ -43,14 +43,17 @@ body.askbot { ...@@ -43,14 +43,17 @@ body.askbot {
vertical-align: top; vertical-align: top;
width: flex-grid(9) + flex-gutter(); width: flex-grid(9) + flex-gutter();
p.tabula-rasa { .tabula-rasa {
@extend .light-button;
@include border-radius(5px); @include border-radius(5px);
background-color: #f6f6f6; display: block;
color: #888;
margin: 10px auto; margin: 10px auto;
padding: 20px; padding: 20px;
text-align: center; text-align: center;
width: flex-grid(5); width: flex-grid(5);
text-decoration: none;
color: #888;
font-weight: bold;
&:first-child { &:first-child {
margin-top: 70px; margin-top: 70px;
...@@ -59,14 +62,50 @@ body.askbot { ...@@ -59,14 +62,50 @@ body.askbot {
margin-bottom: 70px; margin-bottom: 70px;
} }
a {
text-decoration: none;
color: #888;
font-weight: bold;
}
} }
} }
} }
} }
} }
// Autocomplete
.acInput {
width: 200px;
}
.acResults {
background-color: #fff;
border: 1px solid #ababab;
overflow: hidden;
padding: 0px;
@include box-shadow(0 2px 2px #bbb);
ul {
list-style-position: outside;
list-style: none;
margin: 0;
padding: 0;
width: 100%;
}
li {
cursor: pointer;
display: block;
font: menu;
margin: 0px;
overflow: hidden;
padding: 5px 10px;
text-align: left;
border-top: 1px solid #eee;
width: 100%;
}
}
.acLoading {
background : url('../images/indicator.gif') right center no-repeat;
}
.acSelect {
background-color: $mit-red;
color: #fff;
}
...@@ -13,17 +13,27 @@ form.answer-form { ...@@ -13,17 +13,27 @@ form.answer-form {
} }
div.form-item { div.form-item {
margin: 25px 0; margin: 15px 0;
label { label {
display: block; display: block;
margin-bottom: -5px; margin-bottom: -5px;
} }
.title-desc {
@include box-sizing(border-box);
background: #333;
color: #fff;
font-size: 13px;
padding: 5px 10px;
width: flex-grid(6);
-webkit-font-smoothing: antialiased;
}
} }
span.form-error, label.form-error { span.form-error, label.form-error {
color: #990000; color: #990000;
display: inline; display: inline-block;
font-size: 90%; font-size: 90%;
font-weight: bold; font-weight: bold;
padding: 10px 0; padding: 10px 0;
...@@ -78,6 +88,7 @@ form.question-form { ...@@ -78,6 +88,7 @@ form.question-form {
} }
input[type="text"] { input[type="text"] {
@include box-sizing(border-box);
width: flex-grid(6); width: flex-grid(6);
} }
......
.vote-notification {
background-color: darken($mit-red, 7%);
@include border-radius(4px);
@include box-shadow(0px 2px 9px #aaa);
color: white;
cursor: pointer;
display: none;
font-size: 14px;
font-weight: normal;
padding-bottom: 10px;
position: absolute;
text-align: center;
h3 {
background: $mit-red;
padding: 10px 10px 10px 10px;
font-size: 13px;
margin-bottom: 5px;
border-bottom: darken(#8e0000, 10%) 1px solid;
@include box-shadow(0 1px 0 lighten($mit-red, 10%));
color: #fff;
font-weight: normal;
@include border-radius(4px 4px 0 0);
}
a {
color: #fb7321;
text-decoration: underline;
font-weight: bold; } }
body.user-profile-page {
section.user-info {
// @extend .sidebar;
header {
@extend .clearfix;
border-bottom: 1px solid #d3d3d3;
@include box-shadow(0 1px 0 #eee);
padding: 0 lh();
margin: 0 (-(lh())) lh();
section {
float: left;
width: flex-grid(2, 3);
margin-right: flex-gutter(3);
h1 {
margin-top: 0;
}
}
p.karma {
float: left;
width: flex-grid(1, 3);
border: 1px solid #D3D3D3;
@include border-radius(3px);
@include box-shadow(inset 0 0 0 1px #fff, 0 1px 0 #fff);
background: #eee;
text-align: center;
padding: lh(.5) 0;
strong {
display: block;
font-style: 20px;
}
}
}
}
section.questions {
h1 {
@extend .top-header;
}
}
ul.sub-info {
border-top: 1px solid #ddd;
margin-top: lh();
list-style: none;
> li {
width: flex-grid(2.25, 9);
display: table-cell;
padding: (flex-gutter(9)/2);
border-right: 1px solid #ddd;
@include box-sizing(border-box);
&:first-child {
padding-left: 0;
}
&:last-child {
border-right: 0;
padding-right: 0;
}
h2 {
margin-top: 0;
}
span.tag-number {
display: none;
}
}
ul {
list-style: none;
&.user-stats-table {
list-style: none;
}
&.vote-buttons {
list-style: none;
li {
@include border-radius(4px);
background-color: lighten(#F6EFD4, 3%);
background-position: 10px center;
background-repeat: no-repeat;
height: 20px;
padding: 10px 10px 10px 40px;
display: inline-block;
&.up {
background-image: url(/static/images/askbot/vote-arrow-up.png);
margin-right: 6px;
}
&.down {
background-image: url(/static/images/askbot/vote-arrow-down.png);
}
}
}
&.badges {
@include border-radius(4px);
background-color: #e3e3e3;
@include inline-block();
a {
border: 0;
background: none;
text-transform: uppercase;
color: #292309;
font-size: 12px;
padding: 10px;
text-shadow: 0 1px 0 #fff;
display: block;
}
}
}
}
}
...@@ -72,7 +72,7 @@ div.question-header { ...@@ -72,7 +72,7 @@ div.question-header {
width: flex-grid(4,8); width: flex-grid(4,8);
a { a {
color: darken(#F6EFD4, 50%); // color: darken(#F6EFD4, 50%);
&.question-delete { &.question-delete {
color: $mit-red; color: $mit-red;
...@@ -80,7 +80,7 @@ div.question-header { ...@@ -80,7 +80,7 @@ div.question-header {
} }
span.sep { span.sep {
color: darken(#F6EFD4, 10%); color: #ccc;
} }
} }
} }
...@@ -100,11 +100,10 @@ div.question-header { ...@@ -100,11 +100,10 @@ div.question-header {
display: inline-block; display: inline-block;
float: left; float: left;
width: flex-grid(1.8,8); width: flex-grid(1.8,8);
border-left: 1px dotted #CCC;
div.post-update-info { div.post-update-info {
@include box-sizing(border-box); @include box-sizing(border-box);
@include border-radius(5px);
background:lighten(#F6EFD4, 5%);
padding: 10px; padding: 10px;
margin-bottom: 10px; margin-bottom: 10px;
...@@ -127,29 +126,19 @@ div.question-header { ...@@ -127,29 +126,19 @@ div.question-header {
div.change-date { div.change-date {
font-size: 12px; font-size: 12px;
margin-bottom: 10px; margin-bottom: 2px;
} }
div.avatar { div.user-meta {
display: inline-block; display: inline-block;
float: left;
margin-right: 3px;
img.gravatar { span.username {
background: white; font-size: 20px;
border: 1px solid darken(#F6EFD4, 10%);
margin-right: 5px; margin-right: 5px;
padding: 3px ;
vertical-align: bottom;
} }
}
div.user-meta {
display: inline-block;
width: 60%;
span.user-badges { span.user-badges {
display: block; // display: block;
} }
} }
} }
...@@ -158,16 +147,13 @@ div.question-header { ...@@ -158,16 +147,13 @@ div.question-header {
div.comments-container { div.comments-container {
@include box-sizing(border-box); @include box-sizing(border-box);
// background: lighten(#efefef, 3%);
padding: 3%;
display: inline-block; display: inline-block;
// margin: 15px 0 0; padding: 0 0 3% 0;
padding: 3%;
width: 100%; width: 100%;
div.comments-content { div.comments-content {
font-size: 13px; font-size: 13px;
background: lighten(#efefef, 4%); background: #efefef;
div.block { div.block {
border-top: 1px solid #ddd; border-top: 1px solid #ddd;
...@@ -177,9 +163,6 @@ div.question-header { ...@@ -177,9 +163,6 @@ div.question-header {
&:first-child { &:first-child {
border-top: 0; border-top: 0;
} }
// &:last-child {
// border-bottom: 1px solid #ddd;
// }
} }
form.post-comments { form.post-comments {
...@@ -291,7 +274,7 @@ div.question-header { ...@@ -291,7 +274,7 @@ div.question-header {
} }
.counter { .counter {
color: #888; color: #888;
display: block; display: none;
float: right; float: right;
margin-top: 5px; margin-top: 5px;
text-align: right; text-align: right;
...@@ -299,7 +282,7 @@ div.question-header { ...@@ -299,7 +282,7 @@ div.question-header {
div.controls { div.controls {
// padding: 15px 0; // padding: 15px 0;
background: lighten(#eeeeee, 4%); background: #efefef ;
text-align: right; text-align: right;
a { a {
display: inline-block; display: inline-block;
...@@ -311,4 +294,18 @@ div.question-header { ...@@ -311,4 +294,18 @@ div.question-header {
} }
} }
div.question-status {
background: $mit-red;
clear:both;
color: #fff;
display: block;
padding: 10px 0 10px 7.5%;
h3 {
font-weight: normal;
}
a {
color: #eee;
}
}
div.question-list-header { div.question-list-header {
display: block; display: block;
margin-bottom: 15px; margin-bottom: 0px;
overflow: hidden; overflow: hidden;
width: flex-grid(9,9); width: flex-grid(9,9);
@extend h1.top-header;
section.question-list-meta { section.question-list-meta {
display: block; display: block;
...@@ -14,6 +15,9 @@ div.question-list-header { ...@@ -14,6 +15,9 @@ div.question-list-header {
float: left; float: left;
} }
h1 {
margin: 0;
}
span.label { span.label {
color: #555; color: #555;
} }
...@@ -30,6 +34,7 @@ div.question-list-header { ...@@ -30,6 +34,7 @@ div.question-list-header {
div.question-sort { div.question-sort {
float: right; float: right;
margin-left: flex-gutter(); margin-left: flex-gutter();
margin-top: 10px;
nav { nav {
@extend .action-link; @extend .action-link;
...@@ -42,8 +47,8 @@ div.question-list-header { ...@@ -42,8 +47,8 @@ div.question-list-header {
&:before { &:before {
content: '|'; content: '|';
color: darken(#F6EFD4, 10%); color: #ccc;
font-size: 22px; font-size: 16px;
} }
} }
} }
...@@ -53,8 +58,7 @@ div.question-list-header { ...@@ -53,8 +58,7 @@ div.question-list-header {
section.question-tags-list { section.question-tags-list {
display: block; display: block;
min-height: 26px; min-height: 26px;
overflow: hidden; padding-top:15px;
padding-top:5px;
width: 100%; width: 100%;
div { div {
...@@ -64,6 +68,7 @@ div.question-list-header { ...@@ -64,6 +68,7 @@ div.question-list-header {
div.back { div.back {
margin-right: 10px; margin-right: 10px;
margin-top: 4px;
a { a {
color: #555; color: #555;
...@@ -73,6 +78,14 @@ div.question-list-header { ...@@ -73,6 +78,14 @@ div.question-list-header {
div.tags-list { div.tags-list {
} }
ul.tags li {
background: #fff;
&:before {
border-color: transparent #fff transparent transparent;
}
}
} }
} }
...@@ -80,12 +93,26 @@ ul.question-list, div#question-list { ...@@ -80,12 +93,26 @@ ul.question-list, div#question-list {
width: flex-grid(9,9); width: flex-grid(9,9);
li.single-question { li.single-question {
border-top: 1px solid #eee; border-bottom: 1px solid #eee;
list-style: none; list-style: none;
padding: 10px 0; padding: 10px 3%;
margin-left: -3%;
width: 100%;
&:hover { &:hover {
background: lighten(#F6EFD4, 8%); background: #F3F3F3;
ul.tags li {
background: #ddd;
&:before {
border-color: transparent #ddd transparent transparent;
}
}
}
&:first-child {
border-top: 0;
} }
div { div {
...@@ -130,27 +157,31 @@ ul.question-list, div#question-list { ...@@ -130,27 +157,31 @@ ul.question-list, div#question-list {
text-align: right; text-align: right;
li { li {
@include border-radius(3px); @include linear-gradient(#fff, #f5f5f5);
border: 1px solid #ddd;
display: inline-block; display: inline-block;
height:60px; height:60px;
margin-right: 10px; margin-right: 10px;
width: 60px; width: 60px;
&:hover {
span, div {
color: #555;
}
}
&.views { &.views {
background: lighten(#F6EFD4, 5%);
} }
&.answers { &.answers {
background: #F6EFD4;
} }
&.votes { &.votes {
background: darken(#F6EFD4, 5%);
} }
span, div { span, div {
@include box-sizing(border-box); @include box-sizing(border-box);
color: darken(#F6EFD4, 60%); color: #888;
display: block; display: block;
text-align: center; text-align: center;
} }
...@@ -173,6 +204,23 @@ ul.question-list, div#question-list { ...@@ -173,6 +204,23 @@ ul.question-list, div#question-list {
} }
} }
div.post-own-question {
padding: 11px;
margin-top: 10px;
color: #888;
text-align: center;
a {
font-weight: bold;
@extend .light-button;
padding: 20px;
display: block;
margin: 10px auto;
text-align: center;
width: flex-grid(5);
}
}
} }
.search-result-summary { .search-result-summary {
......
div.discussion-wrapper aside { div.discussion-wrapper aside {
@extend .sidebar; @extend .sidebar;
@include box-shadow(inset 1px 0 0 #f6f6f6);
@include border-radius(0 4px 4px 0);
border-left: 1px solid #d3d3d3; border-left: 1px solid #d3d3d3;
@include border-radius(0 4px 4px 0);
border-right: 1px solid #f6f6f6; border-right: 1px solid #f6f6f6;
@include box-shadow(inset 1px 0 0 #f6f6f6);
padding: lh(); padding: lh();
width: flex-grid(3); width: flex-grid(3);
h1 {
@extend .bottom-border;
margin: (-(lh())) (-(lh())) 0;
padding: lh(.5) lh();
}
h2 { h2 {
color: #4D4D4D; color: #4D4D4D;
...@@ -27,17 +31,28 @@ div.discussion-wrapper aside { ...@@ -27,17 +31,28 @@ div.discussion-wrapper aside {
} }
div.box { div.box {
@include box-shadow(0 1px 0 #eee);
border-bottom: 1px solid #d3d3d3;
display: block; display: block;
padding-bottom: 20px; margin: lh(.5) 0;
overflow: hidden;
&:last-child { &:last-child {
@include box-shadow(none); @include box-shadow(none);
border: 0; border: 0;
} }
h2 {
text-transform: uppercase;
font-weight: bold;
font-size: 14px;
letter-spacing: 1px;
&:not(.first) {
@include box-shadow(inset 0 1px 0 #eee);
border-top: 1px solid #d3d3d3;
margin: 0 (-(lh())) 0;
padding: lh(.5) lh();
}
}
&.contributors { &.contributors {
a { a {
...@@ -70,11 +85,8 @@ div.discussion-wrapper aside { ...@@ -70,11 +85,8 @@ div.discussion-wrapper aside {
} }
} }
#displayTagFilterControl {
margin-top: 10px;
}
div.search-box { div.search-box {
margin-top: lh(.5);
input { input {
@include box-sizing(border-box); @include box-sizing(border-box);
display: inline; display: inline;
...@@ -107,9 +119,9 @@ div.discussion-wrapper aside { ...@@ -107,9 +119,9 @@ div.discussion-wrapper aside {
input#clear { input#clear {
@include box-shadow(none); @include box-shadow(none);
@include border-radius(5px); @include border-radius(15px);
border: none; border: none;
background: $mit-red; background: #bbb;
color: #fff; color: #fff;
display: inline; display: inline;
font-size: 10px; font-size: 10px;
...@@ -118,6 +130,34 @@ div.discussion-wrapper aside { ...@@ -118,6 +130,34 @@ div.discussion-wrapper aside {
} }
} }
div#tagSelector {
h2 {
@include box-shadow(inset 0 1px 0 #eee);
border-top: 1px solid #d3d3d3;
margin: 0 (-(lh())) 0;
padding: lh(.5) lh();
text-transform: uppercase;
font-weight: bold;
font-size: 14px;
letter-spacing: 1px;
}
ul {
margin: 0;
}
div.inputs {
margin-bottom: lh();
}
div#displayTagFilterControl {
p.choice {
@include inline-block();
margin-right: lh(.5);
}
}
}
// Question view sopecific // Question view sopecific
div.follow-buttons { div.follow-buttons {
...@@ -136,11 +176,10 @@ div.discussion-wrapper aside { ...@@ -136,11 +176,10 @@ div.discussion-wrapper aside {
div.question-stats { div.question-stats {
ul { ul {
color: #777; color: #777;
list-style: none;
li { li {
@include box-shadow(0 1px 0 #eee); padding: 7px 0 0;
border-bottom: 1px solid #d3d3d3;
padding: 7px 0;
&:last-child { &:last-child {
@include box-shadow(none); @include box-shadow(none);
...@@ -162,6 +201,3 @@ div.discussion-wrapper aside { ...@@ -162,6 +201,3 @@ div.discussion-wrapper aside {
} }
} }
} }
ul.tags { ul.tags {
list-style: none; list-style: none;
display: inline; display: inline;
li, a { li, a {
position: relative; position: relative;
} }
li { li {
@include border-radius(4px);
background: #eee; background: #eee;
@include border-radius(4px);
@include box-shadow(0px 1px 0px #ccc);
color: #555; color: #555;
display: inline-block; display: inline-block;
font-size: 12px; font-size: 12px;
margin-bottom: 5px;
margin-left: 15px; margin-left: 15px;
padding: 3px 10px 5px 5px; padding: 3px 10px 5px 5px;
margin-bottom: 5px;
&:before { &:before {
border-color:transparent #eee transparent transparent; border-color:transparent #eee transparent transparent;
...@@ -20,15 +23,15 @@ ul.tags { ...@@ -20,15 +23,15 @@ ul.tags {
border-width:12px 12px 12px 0; border-width:12px 12px 12px 0;
content:""; content:"";
height:0; height:0;
left:-11px; left:-10px;
position:absolute; position:absolute;
top:0; top:0;
width:0; width:0;
} }
span.delete-icon, div.delete-icon { span.delete-icon, div.delete-icon {
@include border-radius(0 4px 4px 0);
background: #555; background: #555;
@include border-radius(0 4px 4px 0);
clear: none; clear: none;
color: #eee; color: #eee;
cursor: pointer; cursor: pointer;
...@@ -36,7 +39,7 @@ ul.tags { ...@@ -36,7 +39,7 @@ ul.tags {
float: none; float: none;
left: 10px; left: 10px;
opacity: 0.5; opacity: 0.5;
padding: 3px 6px; padding: 4px 6px;
position: relative; position: relative;
top: 1px; top: 1px;
...@@ -53,11 +56,12 @@ ul.tags { ...@@ -53,11 +56,12 @@ ul.tags {
} }
span.tag-number { span.tag-number {
@include border-radius(3px); display: none;
background: #555; // @include border-radius(3px);
font-size: 10px; // background: #555;
margin: 0 3px; // font-size: 10px;
padding: 2px 5px; // margin: 0 3px;
color: #eee; // padding: 2px 5px;
opacity: 0.5; // color: #eee;
// opacity: 0.5;
} }
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
@include box-sizing(border-box); @include box-sizing(border-box);
margin: 0 auto; margin: 0 auto;
max-width: $fg-max-width; max-width: $fg-max-width;
min-width: $fg-min-width; // min-width: $fg-min-width;
padding: lh(); padding: lh();
width: flex-grid(12); width: flex-grid(12);
} }
......
...@@ -8,6 +8,11 @@ footer { ...@@ -8,6 +8,11 @@ footer {
padding: lh() 0; padding: lh() 0;
background: url('/static/images/marketing/mit-logo.png') right center no-repeat; background: url('/static/images/marketing/mit-logo.png') right center no-repeat;
@media screen and (max-width: 780px) {
background-position: left bottom;
padding-bottom: lh(3);
}
a { a {
color: #888; color: #888;
text-decoration: none; text-decoration: none;
...@@ -26,8 +31,13 @@ footer { ...@@ -26,8 +31,13 @@ footer {
ul { ul {
@include inline-block(); @include inline-block();
@media screen and (max-width: 780px) {
margin-top: lh();
}
li { li {
@include inline-block(); @include inline-block();
margin-bottom: 0;
&:after { &:after {
content: ' |'; content: ' |';
......
...@@ -15,6 +15,10 @@ header.announcement { ...@@ -15,6 +15,10 @@ header.announcement {
div { div {
padding: lh(10) lh() lh(3); padding: lh(10) lh() lh(3);
@media screen and (max-width:780px) {
padding: lh(2.5) lh() lh(2);
}
//hide login link for homepage //hide login link for homepage
nav { nav {
h1 { h1 {
...@@ -41,7 +45,12 @@ header.announcement { ...@@ -41,7 +45,12 @@ header.announcement {
div { div {
padding: lh(4) lh() lh(2); padding: lh(4) lh() lh(2);
@media screen and (max-width:780px) {
padding: lh(2.5) lh() lh(2);
}
} }
} }
div { div {
...@@ -61,6 +70,7 @@ header.announcement { ...@@ -61,6 +70,7 @@ header.announcement {
@include inline-block(); @include inline-block();
margin-right: lh(.5); margin-right: lh(.5);
a { a {
font: italic 800 18px $header-font-family; font: italic 800 18px $header-font-family;
color: #fff; color: #fff;
...@@ -87,43 +97,53 @@ header.announcement { ...@@ -87,43 +97,53 @@ header.announcement {
section { section {
@extend .clearfix; @extend .clearfix;
@include inline-block();
background: $mit-red; background: $mit-red;
@include inline-block();
margin-left: flex-grid(4) + flex-gutter(); margin-left: flex-grid(4) + flex-gutter();
padding: lh() lh(1.5); padding: lh() lh(1.5);
@media screen and (max-width: 780px) {
margin-left: 0;
}
h1 { h1 {
@include inline-block();
font-family: "Open Sans"; font-family: "Open Sans";
font-size: 30px; font-size: 30px;
font-weight: 800; font-weight: 800;
@include inline-block();
line-height: 1.2em; line-height: 1.2em;
margin: 0 lh() 0 0; margin: 0 lh() 0 0;
} }
h2 { h2 {
@include inline-block();
font-family: "Open Sans"; font-family: "Open Sans";
font-size: 24px; font-size: 24px;
font-weight: 400; font-weight: 400;
@include inline-block();
line-height: 1.2em; line-height: 1.2em;
} }
&.course { &.course {
section { section {
width: flex-grid(4, 8);
margin-right: flex-gutter(8);
float: left; float: left;
margin-left: 0; margin-left: 0;
margin-right: flex-gutter(8);
padding: 0; padding: 0;
width: flex-grid(4, 8);
@media screen and (max-width: 780px) {
float: none;
width: 100%;
margin-right: 0;
}
a { a {
@extend .button; @extend .button;
@include box-shadow(inset 0 1px 0 darken($mit-red, 10%), 0 1px 0 lighten($mit-red, 5%));
background-color: darken($mit-red, 20%); background-color: darken($mit-red, 20%);
border-color: darken($mit-red, 30%);
@include box-shadow(inset 0 1px 0 darken($mit-red, 10%), 0 1px 0 lighten($mit-red, 5%));
display: block; display: block;
padding: lh(.5) lh(); padding: lh(.5) lh();
border-color: darken($mit-red, 30%);
text-align: center; text-align: center;
&:hover { &:hover {
...@@ -137,6 +157,11 @@ header.announcement { ...@@ -137,6 +157,11 @@ header.announcement {
width: flex-grid(4, 8); width: flex-grid(4, 8);
line-height: lh(); line-height: lh();
float: left; float: left;
@media screen and (max-width: 780px) {
float: none;
width: 100%;
}
} }
} }
} }
......
...@@ -6,6 +6,12 @@ section.index-content { ...@@ -6,6 +6,12 @@ section.index-content {
@extend .clearfix; @extend .clearfix;
float: left; float: left;
@media screen and (max-width: 780px) {
float: none;
width: auto;
margin-right: 0;
}
h1 { h1 {
font-size: 800 24px "Open Sans"; font-size: 800 24px "Open Sans";
margin-bottom: lh(); margin-bottom: lh();
...@@ -27,6 +33,13 @@ section.index-content { ...@@ -27,6 +33,13 @@ section.index-content {
padding-right: flex-gutter() / 2; padding-right: flex-gutter() / 2;
width: flex-grid(8); width: flex-grid(8);
@media screen and (max-width: 780px) {
width: 100%;
border-right: 0;
margin-right: 0;
padding-right: 0;
}
section { section {
@extend .clearfix; @extend .clearfix;
margin-bottom: lh(); margin-bottom: lh();
...@@ -35,8 +48,17 @@ section.index-content { ...@@ -35,8 +48,17 @@ section.index-content {
width: flex-grid(4, 8); width: flex-grid(4, 8);
float: left; float: left;
@media screen and (max-width: 780px) {
float: none;
width: auto;
}
&:nth-child(odd) { &:nth-child(odd) {
margin-right: flex-gutter(8); margin-right: flex-gutter(8);
@media screen and (max-width: 780px) {
margin-right: 0;
}
} }
} }
...@@ -48,6 +70,11 @@ section.index-content { ...@@ -48,6 +70,11 @@ section.index-content {
margin-right: flex-gutter(8); margin-right: flex-gutter(8);
width: flex-grid(4, 8); width: flex-grid(4, 8);
@media screen and (max-width: 780px) {
margin-right: 0;
width: auto;
}
p { p {
margin-right: 0; margin-right: 0;
width: auto; width: auto;
...@@ -58,6 +85,10 @@ section.index-content { ...@@ -58,6 +85,10 @@ section.index-content {
&.intro-video { &.intro-video {
width: flex-grid(4, 8); width: flex-grid(4, 8);
@media screen and (max-width: 780px) {
width: auto;
}
a { a {
display: block; display: block;
width: 100%; width: 100%;
...@@ -82,11 +113,14 @@ section.index-content { ...@@ -82,11 +113,14 @@ section.index-content {
h2 { h2 {
text-transform: uppercase; text-transform: uppercase;
letter-spacing: 1px; letter-spacing: 1px;
color: #666; color: #888;
margin-bottom: lh(); margin-bottom: lh();
font-weight: normal;
font-size: 14px;
span { span {
text-transform: none; text-transform: none;
} }
} }
...@@ -119,8 +153,17 @@ section.index-content { ...@@ -119,8 +153,17 @@ section.index-content {
float: left; float: left;
margin-bottom: lh(.5); margin-bottom: lh(.5);
@media screen and (max-width: 780px) {
width: auto;
float: none;
}
&:nth-child(odd) { &:nth-child(odd) {
margin-right: flex-gutter(8); margin-right: flex-gutter(8);
@media screen and (max-width: 780px) {
margin-right: 0;
}
} }
} }
} }
...@@ -131,12 +174,17 @@ section.index-content { ...@@ -131,12 +174,17 @@ section.index-content {
&.course, &.staff { &.course, &.staff {
width: flex-grid(4); width: flex-grid(4);
@media screen and (max-width: 780px) {
width: auto;
}
h1 { h1 {
color: #888;
font: normal $body-font-size $body-font-family; font: normal $body-font-size $body-font-family;
text-transform: uppercase; font-size: 14px;
letter-spacing: 1px; letter-spacing: 1px;
color: #666;
margin-bottom: lh(); margin-bottom: lh();
text-transform: uppercase;
} }
h2 { h2 {
...@@ -149,6 +197,13 @@ section.index-content { ...@@ -149,6 +197,13 @@ section.index-content {
a { a {
@extend .button; @extend .button;
span.arrow {
color: rgba(#fff, .6);
font-style: normal;
@include inline-block();
padding-left: 10px;
}
} }
ul { ul {
...@@ -169,9 +224,18 @@ section.index-content { ...@@ -169,9 +224,18 @@ section.index-content {
background: url('/static/images/marketing/circuits-bg.jpg') 0 0 no-repeat; background: url('/static/images/marketing/circuits-bg.jpg') 0 0 no-repeat;
@include background-size(contain); @include background-size(contain);
@media screen and (max-width: 998px) { @media screen and (max-width: 998px) and (min-width: 781px){
background: url('/static/images/marketing/circuits-medium-bg.jpg') 0 0 no-repeat; background: url('/static/images/marketing/circuits-medium-bg.jpg') 0 0 no-repeat;
} }
@media screen and (max-width: 780px) {
padding-top: lh(5);
background: url('/static/images/marketing/circuits-bg.jpg') 0 0 no-repeat;
}
@media screen and (min-width: 500px) and (max-width: 781px) {
padding-top: lh(8);
}
} }
} }
...@@ -185,12 +249,26 @@ section.index-content { ...@@ -185,12 +249,26 @@ section.index-content {
padding-right: flex-gutter() / 2; padding-right: flex-gutter() / 2;
width: flex-grid(8); width: flex-grid(8);
@media screen and (max-width: 780px) {
width: auto;
border-right: 0;
margin-right: 0;
padding-right: 0;
}
section { section {
width: flex-grid(4, 8); width: flex-grid(4, 8);
@media screen and (max-width: 780px) {
width: auto;
}
&.about-info { &.about-info {
margin-right: flex-gutter(8); margin-right: flex-gutter(8);
@media screen and (max-width: 780px) {
margin-right: 0;
}
} }
&.requirements { &.requirements {
...@@ -205,6 +283,12 @@ section.index-content { ...@@ -205,6 +283,12 @@ section.index-content {
width: flex-grid(4, 8); width: flex-grid(4, 8);
margin-right: flex-gutter(8); margin-right: flex-gutter(8);
@media screen and (max-width: 780px) {
margin-right: 0;
float: none;
width: auto;
}
&:nth-child(odd) { &:nth-child(odd) {
margin-right: 0; margin-right: 0;
} }
...@@ -225,6 +309,12 @@ section.index-content { ...@@ -225,6 +309,12 @@ section.index-content {
} }
} }
} }
&.staff {
h1 {
margin-top: lh(1);
}
}
} }
} }
......
...@@ -5,7 +5,7 @@ $fg-column: 60px; ...@@ -5,7 +5,7 @@ $fg-column: 60px;
$fg-gutter: 25px; $fg-gutter: 25px;
$fg-max-columns: 12; $fg-max-columns: 12;
$fg-max-width: 1400px; $fg-max-width: 1400px;
$fg-min-width: 810px; $fg-min-width: 781px;
$gw-column: 60px; $gw-column: 60px;
$gw-gutter: 25px; $gw-gutter: 25px;
...@@ -14,17 +14,7 @@ $body-font-family: Georgia, serif; ...@@ -14,17 +14,7 @@ $body-font-family: Georgia, serif;
$header-font-family: "Open Sans", Helvetica, Arial, sans-serif; $header-font-family: "Open Sans", Helvetica, Arial, sans-serif;
$body-font-size: 16px; $body-font-size: 16px;
// @media screen and (min-width:1200px) {
// $body-font-size: 18px;
// }
// @media screen and (max-width:890px) {
// $body-font-size: 14px;
// }
$body-line-height: golden-ratio($body-font-size, 1); $body-line-height: golden-ratio($body-font-size, 1);
$lh: golden-ratio($body-font-size, 1);
// Colors // Colors
$mit-red: #933; $mit-red: #933;
......
div.header-wrapper { div.header-wrapper {
// @include linear-gradient(lighten($mit-red, 5%), darken($mit-red, 5%));
@include box-shadow(inset 0 -1px 2px darken($mit-red, 10%));
background: $mit-red; background: $mit-red;
border-bottom: 1px solid #fff; border-bottom: 1px solid #fff;
@include box-shadow(inset 0 -4px 6px darken($mit-red, 5%));
@media print { @media print {
display: none; display: none;
...@@ -17,25 +16,38 @@ div.header-wrapper { ...@@ -17,25 +16,38 @@ div.header-wrapper {
hgroup { hgroup {
@extend .clearfix; @extend .clearfix;
float: left; float: left;
min-width: flex-grid(3);
padding-top: 13px;
h1 { h1 {
border-right: 1px solid darken($mit-red, 5%);
color: darken($mit-red, 25%); color: darken($mit-red, 25%);
font-size: 20px; font-size: 18px;
font-weight: 800; font-weight: 800;
margin: 0 lh() 0 0;
padding: 17px lh() 14px 0;
text-shadow: 0 1px 0 lighten($mit-red, 10%);
line-height: lh();
@include inline-block(); @include inline-block();
line-height: lh();
margin: 0;
padding: 0 lh(.5) 0 0;
text-shadow: 0 1px 0 lighten($mit-red, 10%);
&:after {
color: darken($mit-red, 10%);
content: "•";
display: inline-block;
font-size: 10px;
letter-spacing: -2px;
padding-left: lh(.5);
text-shadow: 0;
}
} }
h2 { h2 {
font-size: 16px;
@include inline-block(); @include inline-block();
margin: 0 lh() 0 0; letter-spacing: 0;
padding: 19px lh() 9px 0; margin: 0;
line-height: lh(); padding: 0 lh() 0px 0;
border-right: 1px solid darken($mit-red, 5%); text-shadow: 0 -1px 0 darken($mit-red, 10%);
text-transform: none;
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
a { a {
...@@ -48,61 +60,123 @@ div.header-wrapper { ...@@ -48,61 +60,123 @@ div.header-wrapper {
} }
} }
@media screen and (max-width: 920px) {
border-bottom: 1px solid darken($mit-red, 5%); @media screen and (max-width: 900px) {
display: block; display: block;
float: none; float: none;
h1 { h1 {
float: right;
border: 0; border: 0;
margin-right: 0; float: left;
padding-right: 0;
} }
h2 { h2 {
float: left;
border: 0; border: 0;
float: left;
margin-right: 0; margin-right: 0;
padding-right: 0;
} }
} }
} }
nav { nav {
float: left; background: #501016;
border-bottom: 1px solid darken(#501016, 10%);
@include border-radius(3px 3px 0 0);
@include box-shadow(inset 0 0 0 1px darken(#501016, 5%), inset 0 2px 0 lighten(#501016, 5%));
display: block; display: block;
margin: 0; float: left;
margin: 5px 0 0;
padding: 0; padding: 0;
text-shadow: 0 -1px 0 darken($mit-red, 10%); text-shadow: 0 -1px 0 darken($mit-red, 10%);
max-height: 52px; //fix for firefox
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
ul { ul {
@extend .clearfix; @extend .clearfix;
display: inline-block;
padding: 19px 0 9px;
margin: 0; margin: 0;
li { li {
margin-right: lh();
display: inline-block;
margin-bottom: 0;
line-height: lh(); line-height: lh();
margin-bottom: 0;
float: left;
a { a {
color: #fff; color: #fff;
display: block;
font-weight: bold;
padding: 10px lh() 8px;
text-decoration: none; text-decoration: none;
@media screen and (max-width: 1020px) {
padding: 10px lh(.7) 8px;
}
&:hover { &:hover {
color: rgba(#fff, .7); color: rgba(#fff, .7);
background-color: none; background-color: none;
text-decoration: none;
} }
} }
} }
} }
@media screen and (max-width: 900px) {
width: 100%;
float: none;
ul {
li {
padding: auto;
display: table-cell;
width: 16.6666666667%;
text-align: center;
}
}
}
.active {
background: #F4F4F4;
border: 1px solid darken(#501016, 10%);
border-bottom: 0;
@include border-radius(3px 3px 0 0);
@include box-shadow(0 2px 0 #f4f4f4, inset 0 1px 0 #fff);
color: #333;
text-shadow: 0 1px 0 #fff;
}
&.courseware {
li.courseware a {
@extend .active;
}
}
&.book {
li.book a {
@extend .active;
}
}
&.info {
li.info a {
@extend .active;
}
}
&.discussion {
li.discussion a {
@extend .active;
}
}
&.wiki {
li.wiki a {
@extend .active;
}
}
&.profile {
li.profile a {
@extend .active;
}
}
} }
} }
} }
...@@ -11,11 +11,13 @@ html { ...@@ -11,11 +11,13 @@ html {
section.main-content { section.main-content {
@extend .clearfix; @extend .clearfix;
@extend .wrapper; @extend .wrapper;
@include box-sizing(border-box);
@include border-radius(4px);
overflow: hidden;
background: #fff; background: #fff;
border: 1px solid #bbb;
border-bottom: 1px solid #bbb; border-bottom: 1px solid #bbb;
@include box-shadow(0 0 4px #dfdfdf);
@include box-sizing(border-box);
margin-top: 3px;
overflow: hidden;
@media print { @media print {
border-bottom: 0; border-bottom: 0;
...@@ -23,9 +25,7 @@ html { ...@@ -23,9 +25,7 @@ html {
} }
@media screen and (min-width: 1400px) { @media screen and (min-width: 1400px) {
// @include border-radius(3px); @include border-radius(4px);
@include box-shadow(0 0 4px #dfdfdf);
border: 1px solid #bbb;
margin-top: lh(.5); margin-top: lh(.5);
} }
} }
......
...@@ -10,24 +10,24 @@ ...@@ -10,24 +10,24 @@
} }
div.leanModal_box { div.leanModal_box {
background: #fff;
border: none;
@include border-radius(3px); @include border-radius(3px);
@include box-shadow(0 0 6px #000); @include box-shadow(0 0 6px #000);
@include box-sizing(border-box); @include box-sizing(border-box);
display: none; display: none;
border: none;
background: #fff;
padding: lh(2); padding: lh(2);
a.modal_close { a.modal_close {
color: #aaa;
display: block;
font-style: normal;
height: 14px;
position: absolute; position: absolute;
top: 12px;
right: 12px; right: 12px;
display: block; top: 12px;
width: 14px; width: 14px;
height: 14px;
z-index: 2; z-index: 2;
color: #aaa;
font-style: normal;
&:hover{ &:hover{
text-decoration: none; text-decoration: none;
...@@ -36,19 +36,24 @@ div.leanModal_box { ...@@ -36,19 +36,24 @@ div.leanModal_box {
} }
h1 { h1 {
border-bottom: 1px solid #eee;
font-size: 24px; font-size: 24px;
margin-bottom: lh();
margin-top: 0; margin-top: 0;
padding-bottom: lh(); padding-bottom: lh();
border-bottom: 1px solid #eee;
margin-bottom: lh();
text-align: left; text-align: left;
} }
&#enroll { &#enroll {
max-width: 600px; max-width: 600px;
p.ie-warning {
display: none;
}
ol { ol {
@extend .clearfix; @extend .clearfix;
padding-top: lh();
li { li {
...@@ -63,16 +68,16 @@ div.leanModal_box { ...@@ -63,16 +68,16 @@ div.leanModal_box {
&:hover { &:hover {
div.tip { div.tip {
display: block;
line-height: lh();
position: absolute;
background: #333; background: #333;
color: #fff; color: #fff;
width: 500px; display: block;
font-size: 16px;
line-height: lh();
margin: 0 0 0 -10px; margin: 0 0 0 -10px;
padding: 10px; padding: 10px;
position: absolute;
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
font-size: 16px; width: 500px;
} }
} }
} }
...@@ -84,16 +89,16 @@ div.leanModal_box { ...@@ -84,16 +89,16 @@ div.leanModal_box {
div#enroll_error, div#login_error, div#pwd_error { div#enroll_error, div#login_error, div#pwd_error {
$error-color: #333; $error-color: #333;
-webkit-font-smoothing: antialiased;
background-color: $error-color; background-color: $error-color;
border: darken($error-color, 20%); border: darken($error-color, 20%);
color: #fff; color: #fff;
text-shadow: 0 1px 0 darken($error-color, 10%);
font-family: "Open sans"; font-family: "Open sans";
font-weight: bold; font-weight: bold;
letter-spacing: 1px; letter-spacing: 1px;
margin: (-(lh())) (-(lh())) lh(); margin: (-(lh())) (-(lh())) lh();
padding: lh(.5); padding: lh(.5);
text-shadow: 0 1px 0 darken($error-color, 10%);
-webkit-font-smoothing: antialiased;
&:empty { &:empty {
padding: 0; padding: 0;
...@@ -108,11 +113,11 @@ div.leanModal_box { ...@@ -108,11 +113,11 @@ div.leanModal_box {
margin-bottom: lh(.5); margin-bottom: lh(.5);
&.terms, &.remember { &.terms, &.remember {
float: none; border-top: 1px solid #eee;
width: auto;
clear: both; clear: both;
float: none;
padding-top: lh(); padding-top: lh();
border-top: 1px solid #eee; width: auto;
} }
&.honor-code { &.honor-code {
...@@ -139,11 +144,11 @@ div.leanModal_box { ...@@ -139,11 +144,11 @@ div.leanModal_box {
margin: lh(.5) 0 lh() lh(); margin: lh(.5) 0 lh() lh();
li { li {
list-style: disc outside none;
margin-bottom: lh(.5);
color: #666; color: #666;
font-size: 14px;
float: none; float: none;
font-size: 14px;
list-style: disc outside none;
margin-bottom: lh(.5);
} }
} }
} }
......
...@@ -7,3 +7,14 @@ body { ...@@ -7,3 +7,14 @@ body {
margin: 0; margin: 0;
overflow: hidden; overflow: hidden;
} }
div#enroll {
p.ie-warning {
display: block !important;
line-height: 1.3em;
}
form {
display: none;
}
}
...@@ -2,6 +2,13 @@ div#wiki_panel { ...@@ -2,6 +2,13 @@ div#wiki_panel {
@extend .sidebar; @extend .sidebar;
overflow: auto; overflow: auto;
h2 {
padding: lh(.5) lh();
font-size: 18px;
margin: 0 ;
@extend .bottom-border;
}
input[type="button"] { input[type="button"] {
@extend h3; @extend h3;
@include transition(); @include transition();
......
../data/problems/schematic_tutorial.html
\ No newline at end of file
...@@ -2,27 +2,29 @@ ...@@ -2,27 +2,29 @@
var ${ id }contents=["", var ${ id }contents=["",
%for t in items: %for t in items:
${t[1]['content']} , ${t['content']} ,
%endfor %endfor
"" ""
]; ];
var ${ id }types=["", var ${ id }types=["",
%for t in items: %for t in items:
"${t[1]['type']}" , "${t['type']}" ,
%endfor %endfor
"" ""
]; ];
var ${ id }init_functions=["", var ${ id }init_functions=["",
%for t in items: %for t in items:
function(){ ${t[1]['init_js']} }, function(){ ${t['init_js']} },
%endfor %endfor
""]; ""];
var ${ id }titles=${titles};
var ${ id }destroy_functions=["", var ${ id }destroy_functions=["",
%for t in items: %for t in items:
function(){ ${t[1]['destroy_js']} }, function(){ ${t['destroy_js']} },
%endfor %endfor
""]; ""];
...@@ -52,6 +54,7 @@ function ${ id }goto(i) { ...@@ -52,6 +54,7 @@ function ${ id }goto(i) {
function ${ id }setup_click(i) { function ${ id }setup_click(i) {
$('#tt_'+i).click(function(eo) { ${ id }goto(i);}); $('#tt_'+i).click(function(eo) { ${ id }goto(i);});
$('#tt_'+i).addClass("seq_"+${ id }types[i]+"_inactive"); $('#tt_'+i).addClass("seq_"+${ id }types[i]+"_inactive");
$('#tt_'+i).attr("title", ${ id }titles[i-1]);
} }
......
...@@ -65,35 +65,31 @@ ...@@ -65,35 +65,31 @@
}); });
</script> </script>
<%block name="bodyextra">
<%block name="wiki_head"/> <%block name="wiki_head"/>
</%block> </%block>
<%block name="bodyextra">
<%include file="navigation.html" args="active_page='wiki'" /> <%include file="navigation.html" args="active_page='wiki'" />
<section class="main-content"> <section class="main-content">
<div class="wiki-wrapper"> <div class="wiki-wrapper">
<%block name="wiki_panel"> <%block name="wiki_panel">
<div id="wiki_panel"> <div id="wiki_panel">
<% <h2>Course Wiki</h2>
if (wiki_article is not UNDEFINED): <%
baseURL = reverse("wiki_view", args=[wiki_article.get_url()]) if (wiki_article is not UNDEFINED):
else: baseURL = reverse("wiki_view", args=[wiki_article.get_url()])
baseURL = reverse("wiki_view", args=["/"]) else:
%> baseURL = reverse("wiki_view", args=["/"])
%>
<ul class="action"> <ul class="action">
<!-- <li> -->
<!-- <input type="button" onclick="javascript:location.href='${reverse("wiki_random", args=[])}'" value="Random article" class="button" /> -->
<!-- </li> -->
<li> <li>
<input type="button" onclick="javascript:location.href='${reverse("wiki_list_articles", args=[])}'" value="All articles" class="button" /> <input type="button" onclick="javascript:location.href='${reverse("wiki_list_articles", args=[])}'" value="All articles" class="button" />
</li> </li>
<li class="create-article"> <li class="create-article">
<h3> <h3>
<a href="#" id="create-article"/>Create Article</a> <a href="#" id="create-article"/>Create Article</a>
......
...@@ -8,6 +8,27 @@ ...@@ -8,6 +8,27 @@
${ wiki_article.title } ${ wiki_article.title }
</%block> </%block>
<%block name="wiki_head">
<script>
$(function() {
//Store the initial contents of #id_contents (the wiki body field) so we can compare for unsaved changes
$("#id_contents").data('initial_contents', $("#id_contents").val());
window.onbeforeunload = function askConfirm() { //Warn the user before they navigate away
if ( $("#id_contents").val() != $("#id_contents").data('initial_contents') ) {
return "You have made changes to the article that have not been saved yet.";
}
};
$("#submit_edit").click(function() {
$("#id_contents").data('initial_contents', $("#id_contents").val());
});
});
</script>
</%block>
<%block name="wiki_body"> <%block name="wiki_body">
<form method="POST" id="wiki_revision"> <form method="POST" id="wiki_revision">
<div style="display:none"> <div style="display:none">
......
<div class="staff_info">
${xml | h}
</div>
<%inherit file="main.html" /> <%inherit file="main.html" />
<%block name="js_extra">
<script> <script>
var page=${ page }; var page=${ page };
...@@ -16,34 +18,51 @@ function goto_page(n) { ...@@ -16,34 +18,51 @@ function goto_page(n) {
if(n<10) { if(n<10) {
prefix="00"; prefix="00";
} }
$("#bookpage").attr("src","${ settings.BOOK_URL }p"+prefix+n+".jpg"); $("#bookpage").attr("src","${ settings.BOOK_URL }p"+prefix+n+".png");
}; };
function prev_page() { function prev_page() {
var newpage=page-1; var newpage=page-1;
if(newpage<1) newpage=1; if(newpage<0) newpage=0;
goto_page(newpage); goto_page(newpage);
log_event("book", {"type":"prevpage","new":page}); log_event("book", {"type":"prevpage","new":page});
} }
function next_page() { function next_page() {
var newpage=page+1; var newpage=page+1;
if(newpage>1764) newpage=1764; if(newpage>1008) newpage=1008;
goto_page(newpage); goto_page(newpage);
log_event("book", {"type":"nextpage","new":page}); log_event("book", {"type":"nextpage","new":page});
} }
$("#open_close_accordion a").click(function(){
if ($(".book-wrapper").hasClass("closed")){
$(".book-wrapper").removeClass("closed");
} else {
$(".book-wrapper").addClass("closed");
}
});
</script> </script>
</%block>
<%include file="navigation.html" args="active_page='book'" /> <%include file="navigation.html" args="active_page='book'" />
<section class="main-content"> <section class="main-content">
<div class="book-wrapper"> <div class="book-wrapper">
<ul id="booknav" class="treeview-booknav">
<%include file="book_toc.html" />
</ul>
<section class="book"> <section class="book-sidebar">
<header id="open_close_accordion">
<h2>Table of Contents</h2>
<a href="#">close</a>
</header>
<ul id="booknav" class="treeview-booknav">
<%include file="book_toc.html" />
</ul>
</section>
<section class="book">
<section class="page"> <section class="page">
<nav> <nav>
<ul> <ul>
...@@ -56,7 +75,18 @@ function next_page() { ...@@ -56,7 +75,18 @@ function next_page() {
</ul> </ul>
</nav> </nav>
<img id="bookpage" src="${ settings.BOOK_URL }p${ "%03i"%(page) }.jpg"> <img id="bookpage" src="${ settings.BOOK_URL }p${ "%03i"%(page) }.png">
<nav class="bottom-nav">
<ul>
<li class="last">
<a href="javascript:prev_page()">Previous page</a>
</li>
<li class="next">
<a href="javascript:next_page()">Next page</a>
</li>
</ul>
</nav>
</section> </section>
</section> </section>
</div> </div>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment